{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "a8HQYsAtC0Fv",
    "tags": []
   },
   "source": [
    "# Classifying Images with a NN and DNN Model\n",
    "\n",
    "## Introduction\n",
    "\n",
    "In this notebook, you learn how to build a neural network to classify the tf-flowers dataset using a Deep Neural Network Model.\n",
    "\n",
    "## Learning Objectives\n",
    "\n",
    "* Define Helper Functions.\n",
    "* Train and evaluate a Neural Network (NN) model.\n",
    "* Train and evaluate a Deep Neural Network model.\n",
    "\n",
    "\n",
    "Each learning objective will correspond to a __#TODO__ in the [student lab notebook](../labs/classifying_images_with_a_nn_and_dnn_model.ipynb) -- try to complete that notebook first before reviewing this solution notebook.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "ugGJcxKAwhc2",
    "outputId": "f25e3267-1495-48f8-d6e1-4da24dd41755"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2.6.3\n"
     ]
    }
   ],
   "source": [
    "# Import and print the installed version of TensorFlow\n",
    "import tensorflow as tf\n",
    "print(tf.version.VERSION)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "id": "LKXV5oRmkSTK",
    "tags": []
   },
   "outputs": [],
   "source": [
    "conda install graphviz"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Defining Helper Functions\n",
    "#### Reading and Preprocessing image data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "id": "LKXV5oRmkSTK",
    "tags": []
   },
   "outputs": [],
   "source": [
    "# Helper functions\n",
    "def training_plot(metrics, history):\n",
    "  f, ax = plt.subplots(1, len(metrics), figsize=(5*len(metrics), 5))\n",
    "  for idx, metric in enumerate(metrics):\n",
    "    ax[idx].plot(history.history[metric], ls='dashed')\n",
    "    ax[idx].set_xlabel(\"Epochs\")\n",
    "    ax[idx].set_ylabel(metric)\n",
    "    ax[idx].plot(history.history['val_' + metric]);\n",
    "    ax[idx].legend([metric, 'val_' + metric])\n",
    "\n",
    "# Call model.predict() on a few images in the evaluation dataset\n",
    "def plot_predictions(filename):\n",
    "  f, ax = plt.subplots(3, 5, figsize=(25,15))\n",
    "  dataset = (tf.data.TextLineDataset(filename).\n",
    "      map(decode_csv))\n",
    "  for idx, (img, label) in enumerate(dataset.take(15)):\n",
    "    ax[idx//5, idx%5].imshow((img.numpy()));\n",
    "    batch_image = tf.reshape(img, [1, IMG_HEIGHT, IMG_WIDTH, IMG_CHANNELS])\n",
    "    batch_pred = model.predict(batch_image)\n",
    "    pred = batch_pred[0]\n",
    "    label = CLASS_NAMES[label.numpy()]\n",
    "    pred_label_index = tf.math.argmax(pred).numpy()\n",
    "    pred_label = CLASS_NAMES[pred_label_index]\n",
    "    prob = pred[pred_label_index]\n",
    "    ax[idx//5, idx%5].set_title('{}: {} ({:.4f})'.format(label, pred_label, prob))\n",
    "\n",
    "def show_trained_weights(model):\n",
    "  # CLASS_NAMES is ['daisy', 'dandelion', 'roses', 'sunflowers', 'tulips']\n",
    "  LAYER = 1 # Layer 0 flattens the image, layer=1 is the first dense layer\n",
    "  WEIGHT_TYPE = 0 # 0 for weight, 1 for bias\n",
    "\n",
    "  f, ax = plt.subplots(1, 5, figsize=(15,15))\n",
    "  for flower in range(len(CLASS_NAMES)):\n",
    "    weights = model.layers[LAYER].get_weights()[WEIGHT_TYPE][:, flower]\n",
    "    min_wt = tf.math.reduce_min(weights).numpy()\n",
    "    max_wt = tf.math.reduce_max(weights).numpy()\n",
    "    flower_name = CLASS_NAMES[flower]\n",
    "    print(\"Scaling weights for {} in {} to {}\".format(\n",
    "        flower_name, min_wt, max_wt))\n",
    "    weights = (weights - min_wt)/(max_wt - min_wt)\n",
    "    ax[flower].imshow(weights.reshape(IMG_HEIGHT, IMG_WIDTH, 3));\n",
    "    ax[flower].set_title(flower_name);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "ATwrq3yQXCZ3",
    "outputId": "211a7575-abf1-44a4-c15c-2d264d885f99"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "These are the available classes: ['daisy', 'dandelion', 'roses', 'sunflowers', 'tulips']\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2022-02-17 14:48:13.325998: I tensorflow/core/common_runtime/process_util.cc:146] Creating new thread pool with default inter op setting: 2. Tune using inter_op_parallelism_threads for best performance.\n"
     ]
    }
   ],
   "source": [
    "# The import statement combines two operations; it searches for the named module, then it binds the results of that search\n",
    "import matplotlib.pylab as plt\n",
    "import numpy as np\n",
    "import tensorflow as tf\n",
    "IMG_HEIGHT = 224\n",
    "IMG_WIDTH = 224\n",
    "IMG_CHANNELS = 3\n",
    "\n",
    "def read_and_decode(filename, reshape_dims):\n",
    "  # TODO 1: Read the file\n",
    "  img = tf.io.read_file(filename)\n",
    "  # Convert the compressed string to a 3D uint8 tensor.\n",
    "  img = tf.image.decode_jpeg(img, channels=IMG_CHANNELS)\n",
    "  # Use `convert_image_dtype` to convert to floats in the [0,1] range.\n",
    "  img = tf.image.convert_image_dtype(img, tf.float32)\n",
    "  # Resize the image to the desired size.\n",
    "  return tf.image.resize(img, reshape_dims)\n",
    "\n",
    "CLASS_NAMES = [item.numpy().decode(\"utf-8\") for item in \n",
    "               tf.strings.regex_replace(\n",
    "                 tf.io.gfile.glob(\"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/*\"),\n",
    "                 \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/\", \"\")]\n",
    "CLASS_NAMES = [item for item in CLASS_NAMES if item.find(\".\") == -1]\n",
    "print(\"These are the available classes:\", CLASS_NAMES)\n",
    "\n",
    "# the label is the index into CLASS_NAMES array\n",
    "def decode_csv(csv_row):\n",
    "  record_defaults = [\"path\", \"flower\"]\n",
    "  filename, label_string = tf.io.decode_csv(csv_row, record_defaults)\n",
    "  img = read_and_decode(filename, [IMG_HEIGHT, IMG_WIDTH])\n",
    "  label = tf.argmax(tf.math.equal(CLASS_NAMES, label_string))\n",
    "  return img, label"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "BtsR1Fzbh4ff"
   },
   "source": [
    "## Train and evaluate a Neural Network (NN) model\n",
    "\n",
    "One way to get a more complex method is to interpose one or more Dense layers in between the input and output. The model now has three layers. A layer with trainable weights such as the one recently added, that is neither the input nor the output, is called a hidden layer."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In Keras, you introduce the activation function with tf.keras.activations.\n",
    "\n",
    "The Rectified Linear Unit (ReLU) is the most commonly used activation function for hidden layers – other commonly used activation functions include sigmoid, tanh, and elu."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlMAAAE/CAYAAABin0ZUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA+c0lEQVR4nO3deXTb93nn+/fDfRFFSiJFSZRk7Zslb5GXeIst2bElJ3U6k/ba06ZtmtYnt02bzG1nkrbTaWbak2lul+n0NI2v66ZpurlL0taJ6E2UHW+xLXmRKAmUTK2kBALc9w3A9/4BUKZpSqJFEL8f8Pu8zuEhAfwIPILwJR58n+/3+ZlzDhERERG5MnleByAiIiKSzZRMiYiIiMyCkikRERGRWVAyJSIiIjILSqZEREREZkHJlIiIiMgsKJnykJn9ppk97rfHNbPTZnZPJmMSSScze8HMfsHrOES8ZmZfNbO/9TqOXFfgdQBB5pz7WpAeV0REJBdpZkpEso6Z6YOgiPiGkqkMMbMvm9k5M+s3s2NmtnPq9KuZ/YyZnTGzTjP77cnlttSx/2xmf5u6j0Yz22Bmv2FmUTNrMbOPT7qvZWb2pJl1mVmzmf3ipNumPu5nJj3ub2XqORH5MFLj4ctmdggYNLPbzexVM+sxs4NmdtdFfm/q632VmTklZJJLUn/zv2tm7WZ2ysx+dZpj7jKz1inXaVlHGiiZygAz2wh8AbjROVcB3AecnnLMFuDPgZ8ClgKVQN2Uu/ok8DfAAuBt4BmS/4d1wP8E/r9Jx/4D0AosAz4NfM3Mdk4T2xbgm8BnUscuApZf8T9WZG49DDwArAH+Hfg9YCHw68B3zazGw9hEPGFmecD3gYMk3w92Al8ys/s8DSxAlExlRhwoBraYWaFz7rRz7sSUYz4NfN8597Jzbgz478DUEye+5Jx7xjkXA/4ZqAF+3zk3DjwBrDKzKjNbAdwOfNk5N+Kcewd4nGTCNNWngR845150zo0Cvw0k0vKvFkm/P3XOtQA/DdQ75+qdcwnn3HPAAWC3t+GJeOJGoMY59z+dc2POuZPAXwAPeRxXYCiZygDnXDPwJeCrQNTMnjCzZVMOWwa0TPqdIaBzyjGRST8PAx3OufikywDzUvfV5Zzrn3T8GT440zXd4w5O87gifjHxWr0K+IlUia/HzHpIfoBY6llkIt65Clg2ZTz8JlDrbVjBoWQqQ5xzf++cu53ki94BX59ySJhJ5TUzKyVZcrsS54GFZlYx6bqVwLlpjg0DKyY9btksHldkrk3M1rYAf+Ocq5r0Ve6c+/1pfmcQKJt0ecmcRymSWS3AqSnjocI5N3Wm9n1jwczySVY4ZJaUTGWAmW00sx1mVgyMkJxFik857F+AT5rZrWZWBPwPwK7k8VJlkFeB/2VmJWZ2DfA54O+mOfxfgE+kFvMWkVx7pdeF+N3fkhwv95lZfup1fpeZTbfe7x3gTjNbaWaVwG9kNFKRufcG0JfaoFGaGhNbzezGKccdB0rM7AEzKwT+G8klKDJLetPMjGLg94EOoA1YTHIK9gLn3BHgV0iufQoD/UAUGL3Cx3wYWEVylupfgd9JrSt5n9Tj/jLw96nH7Sa5cF3Et1IfGB4kOY7aSX4y/y9M8zct9br/R+AQ8Cbwg8xFKjL3Uss9PglcB5wi+V7zOMmNTJOP6wV+KXXbOZIzVfp7nwbm3NQ1zuIHZjYP6AHWO+dOeRyOiIiIXIRmpnzEzD5pZmVmVg78IdDIlBYKIiIi4i9KpvzlQZJlufPAeuAhp6lDERERX1OZT0RERGQWNDMlIiIiMgtKpkRERERmwbMTfVZXV7tVq1Z59fAi7/Pmm292OOc8bV6nMSF+ojEh8n6XGhOeJVOrVq3iwIEDXj28yPuY2RmvY9CYED/RmBB5v0uNCZX5RERERGZByZSIiIjILCiZEhEREZkFJVMiIiIis6BkSmSWzOxbZhY1s8OTrltoZs+Z2bup7wu8jFEkUzQeJIiUTInM3reB+6dc9xWgwTm3HmhIXRYJgm+j8SABo2RKZJaccy8CXVOufhD469TPfw18KpMxiXhF40GC6LLJ1HRTtlNuNzP7UzNrNrNDZnZD+sMUyTq1zrkwQOr7Yo/jEfGSxoPktJnMTH2bD07ZTrYLWJ/6egT45uzDEgkGM3vEzA6Y2YH29navwxHxnMaEZKPLdkB3zr1oZqsucciDwHeccw54zcyqzGzpxKcQkUtxzjEWTzAylmBoPMbQWJzhsTjj8QTxhCOWcJO+J4gnIJ5IXLg+4RzOkfxK3Z8DcOBwk66HtTXl3LxmUab+aZGJcWBmS4HoRf79jwGPAWzfvt1lKjiRf9x/lq11lVy9rDITDzej8QAaE+Kdv3ntDB9ds5B1iys+9O+m43QydUDLpMutqes+kEyZ2SMkZ69YuXJlGh5a/GxoLMbpjiFOdw5yunOQlq5hOgdG6Roco2twjM7BMQZGY8QTmfl7+dCNKzKZTD0J/Czw+6nv/56pBxa5nP6Rcf7bvx3m529bnalkSuNBfC3cO8xv/9thfv3jG/jCDm+SKZvmumnfHfWJI7e194/y/LEob53p5u2zPRyP9uMm/S8vKi+iel4xC8uL2LxsPovKi6goKaCsqIDSwnxKi/IpK8qnpDCfooI8CvKM/DyjIC+P/DzIz5t8nZGXZ+SZYYAZGIalXo1mYFNuKy3Kn5N/t5n9A3AXUG1mrcDvkHzT+Ccz+xxwFviJOXlwkSvw4vEOxuOOnZtr037fGg+SjZ5qbANg17alV/T76UimWoEVky4vB86n4X4lCwyNxfi3t8/z3bdaeetsN85BZWkh16+sYte2JaxfXMGq6jJWLSqnvNiz82rPKefcwxe5aWdGAxGZoYZQhKqyQm5YWZX2+9Z4kGxU3xhm05IK1tbMu6LfT8e725PAF8zsCeBmoFfrpXJf/8g4j/7wBN/50Rn6R2JsrK3gSzs3cO+WWjYtqSAvb7oJSxHxWjzheP5YlLs3LqYgX91xRNp6Rzhwppv/594NV3wfl02mLjJlWwjgnHsUqAd2A83AEPDZK45GfM85xz/ub+EPnjlG5+AYD1yzlM/euoqPXLUAMyVQIn739tluuofG2blZ3QlEAJ4+nJz/2b1tyRXfx0x2811synbidgf88hVHIFmja3CMX//ng+xrinLTqoX81Wc3c83yKq/DEpEPYW8oSkGeceeGGq9DEfGF+sY2NtTOu6JdfBNycxGLpF1zdICf//Z+2vpG+Oont/Czt67STJRIFmoIRbhp9ULmlxR6HYqI56J9I+w/08UXd66f1f0omZLLOtbWz0OP/Yj8POOJR27hhpU6R6lINjrbOcS70QEeukmtaUQAnj7ShnOw+wp38U1QMiWXdKpjkJ96/DWKCvL4x0c+yqrqcq9DEpErtDcUAeAerZcSAWDPoTDrFs9jQ+2Vl/hAJzqWS+gfGecXv3OAeMLxd79wixIpkSzX0BRh3eJ5XLVIY1mkvX+UN053zXpWCpRMyUU45/j1fz7IqY5BvvFTN7Bu8ZX13hARf+gbGef1k13axSeS8l6J78p38U1QMiXT+u5b53jmSIQv37+RW9dWex2OiMzSi8fbiSUc98xB13ORbFR/KMyamnI2zrLEB0qmZBptvSP8j+8f4aZVC/mF29d4HY6IpEFDKMqCskJtIBEBOgZGef1UJw9sW5qWnelKpuQDvv50E6OxBP/vp69RJ3ORHBCLJy50Pc/XmBbhmSNtJBzs2jr79VKgZEqmONjSw7++fY5fvGO1FpyL5Ii3zvbQMzQ+Jyc2FslG9Y1hVleXs3np7Et8oGRKpvhafYjqeUX833et8zoUEUmThqYIBXnGHRu0/lGkc2CU1052sXvbkrQ1n1YyJRe8caqL10918ct3r2NesVqQieSKhlCUm9eo67kIwLNHI8QTLm0lPlAyJZN884VmFpUX8dCN6o4skivOdA7SHB1g5yaV+EQgWeK7alEZVy+bn7b7VDIlAITCfTx/rJ3P3raK0qJ8r8MRkTTZG4oCqCWCCNA9OMarJzrZnaZdfBOUTAkA3/nRGUoK8/jMLau8DkVE0qghFGH94nmsXFTmdSginnv2aBvxhGN3Gkt8oGRKgIHRGE++c45PXLOMyjKtqRDJFX0j47xxqku7+ERS9jS2sWJhKVvr0lfiAyVTAnz/4HkGx+I8rDPJi+SUHx6b6HquU8iI9AyN8WpzR9pLfKBkSoAn9rewsbaCG1ZWeR2KiKRRQyjCwvIirlfXcxGePRohNgclPlAyFXhnOgc52NLDf/xIXdozdRHxTrLreTt3baxR13MRkrv4li8o5ZrllWm/byVTAbenMQzA7m3pz9RFxDtvnummd3hcu/hEgN6hcV6ZoxIfKJkKvB8cDHP9yiqWL9BOH5Fcsq8pSmG+ccd6dT0XeS4UYTzu2LV1yZzcv5KpADvZPsDRcB+fuGaZ16GISJrtDUW4efUiKtT1XIT6xjB1VaVct6JqTu5fyVSAPXs0AjBnmbqIeON0xyAn2gfZqV18IvSNjPPSu+3s2pq+c/FNpWQqwJ5virJ56XyWVZV6HYqIpNHeUPKDktZLicDeo6kS3xyuDVYyFVB9I+McONPNjk01XociImnWEIqyoXYeKxZqLaRIfWOYpZUlXD9HJT5QMhVYr7zbQTzhuHujygAiuaR3eJz9p9X1XASgf2ScF493sGvrUvLmsEWIkqmAev5YlMrSwjlbjCci3vjhcXU9F5nQEIoyFk+we9vcrg1WMhVAzjl+eLyd29dXU5Cvl4BILpnoen7dCnU9F9nTGGbJ/BJumOOzAOidNIBOdw4R6RvltrXqPyOSS2LxBC8ca+fujYvV9VwCb2A0xg+Pt3P/1iVzWuIDJVOB9NrJTgBuWbPQ40hEJJ0OXOh6rhKfSEMowlgskZEzfCiZCqDXTnayuKKY1dXlXociImk00fX8dnU9F6G+McziimK2XzX3JW8lUwHjnOO1k53cvGaRTmwskmP2hiLcskZdz0UGR2O8cCzZqHOuS3ygZCpwJtZLqcQnkltOdQxysn2QnZtU4hPZ1xRlNJaY00adkymZCpg3TiXXS928epHHkYhIOjWkup6rv5RIssRXPa+YG1dlZuJAyVTAvH22h8rSQtbWaL2USC7ZG4qwsbZCXc8l8IbGYjx/LMqurUsytqtVyVTAvH22h+tWVGm9lEgO6R0aZ//pbt+f2NjM/rOZHTGzw2b2D2ZW4nVMknueb2pnZDzBrjlu1DmZkqkAGRiNcTzaz/Urq7wORUTS6IXjUeIJ5+sSn5nVAb8KbHfObQXygYe8jUpyUbLEV5TR5SxKpgLkUEsPzsH1c9wJVkQyqyEUZVF5UTacHqoAKDWzAqAMOO9xPJJjhsfi7GuKct/VmSvxgZKpQHm7pQeA65ZXeRqHiKTPeDzBC8ei3L3J313PnXPngD8EzgJhoNc59+zU48zsETM7YGYH2tvbMx2mZLkXjkUZHo9npFHnZEqmAuTtsz2sqSmnskw9aDJB60MkEw6c7qZvJOb7rudmtgB4EFgNLAPKzeynpx7nnHvMObfdObe9pqYm02FKltvTGGZheRE3r85s+x8lUwFysLVHs1IZovUhkin7miIU5edx+3rfJx73AKecc+3OuXHge8CtHsckOWRk/L0SX0F+ZtObGT2amd1vZsfMrNnMvjLN7ZVm9n0zO5j6JP7Z9IcqsxHtH6G9f5StdZVehxIkWh8ic64hFOXmNQuZV1zgdSiXcxa4xczKLLmdeCcQ8jgmySEvHGtnaCzO7gzu4ptw2WTKzPKBbwC7gC3Aw2a2Zcphvwwcdc5dC9wF/JGZFaU5VpmFI+f7ANiybL7HkQTDTNeHiMzGyfYBTnYMco+Pd/FNcM69DvwL8BbQSPL95zFPg5KcUt8YZkFZIR9dk/mm1DOZmboJaHbOnXTOjQFPkKx7T+aAitSnjXlAFxBLa6QyK0eVTGXUTNeHaLGtzEZDKArg+/5SE5xzv+Oc2+Sc2+qc+4xzbtTrmCQ3jIzHaQhFPCnxwcySqTqgZdLl1tR1k/0ZsJlkGaMR+KJzLpGWCCUtjpzvZeXCMubrBKiZMqP1IVpsK7OxNxRh05IKli9Q13MJthePtzM4Fs/YufimmkkyNd1eWzfl8n3AOyQ/gV8H/JmZfWAKRJ/CvXPkfB9Xa1Yqk7Q+ROZU79A4B874v+u5SCbUN4apKivk1rXenHd2JslUK7Bi0uXlfHAh7WeB77mkZuAUsGnqHelTuDf6RsY50zmkZCqDtD5E5lo2dD0XyYTRWJy9oSgf31JLoQclPphZMrUfWG9mq1OLyh8CnpxyzFmSn7wxs1pgI3AynYHKlQul1ktdvUw7+TJJ60NkLu0NRameV6R2JxJ4Lx3vYGA05lmJD5Jbty/JORczsy8Az5DslfMt59wRM/t86vZHgd8Fvm1mjSTLgl92znXMYdzyIYTCWnwukksmup7ff/US8nzc9VwkE+obw8wvKeC2tdWexTCjxiTOuXqgfsp1j076+Tzw8fSGJulyPDpAZWkhiyuKvQ5FRNJg/+ku+kdiKvFJ4I3G4jyX2sVXVOBdH3J1QA+A4239bKytILkOWkSyXUMoSlF+Hnes9+6TuIgfvNLcQf9IzJNGnZMpmcpxzjmORfrZsGSe16GISJrsa4pyy9pFlPu/67nInNpzqI2KkgJuX+ftpjYlUzku0jdK/0iMDbUVXociImlwon2AUx2Dvj+xschcG4sleO5oG/duqfW0xAdKpnLesUg/gJIpkRzREIoAsGOTkikJtldOdNA3EmP3Vu928U1QMpXj3lUyJZJT9oai6nouAtQfClNRXMAdG7xfO6hkKscda+unel4xC8t13mmRbNczNMabZ7qz4sTGInNpPJ7g2aMR7tlSS3FBvtfhKJnKdccj/WzU4nORnPDCsfZU13OV+CTYXj3RSe/wOLu2eruLb4KSqRzmnKM5OsC6GiVTIrlgbyhC9bxirlXXcwm4+kNh5hUXcOcGf5yaTslUDmvvH2VwLM4aJVMiWW88nuCHx9vZsalGXc8l0MbjCZ452sbOzYspKfS+xAdKpnLaifZBANbUlHsciYjM1v5T6nouAvDayU56hsbZ5YNdfBOUTOWwkx0DAJqZEskBe0NRigryuH2d9zuXRLxU3ximvCifuzb6o8QHSqZy2qn2QUoK81g6v8TrUERkFpxzNDRF+OgadT2XYIvFEzxzJMKOzbW+KfGBkqmcdrJjkFWLyrW+QiTLnWgf5EznkLqeS+C9fqqLrsExdvtkF98EJVM57GT7AGtV4hPJehe6nmu9lATcnsYwpYX53LXRXx8slEzlqLFYgpbuYVZXa/G5SLZrCEXZvHQ+dVWlXoci4pl4wvHM4TZ2bF5MaZF/SnygZCpnne0aIp5w2sknkuW6B8c4cKZLJT4JvNdPddI5OOaLc/FNpWQqR51sT+7k08yUSHZ74XiUhEMtESTw6hvDlBTmcfcm/+zim6BkKked6pjoMaU1UyLZbG8oSk1FMdfUVXodiohn4gnH04cj7Ni0mLIi/+1oVTKVo062D1I9r4jK0kKvQxGRKzQWS/DisXZ2bFysXbkSaPtPd9ExMOqrRp2TKZnKUSc7BlTiE8ly+0930T8a04mNJfDqG8MUF+SxY5M/x4KSqRx1sn2QNdUq8Ylks72hSLLr+Xp1PZfgSiQcTx1u4+6Ni33btFbJVA7qHR6nc3BMO/lEsphzjoZQlFvXLvLlGhGRTDlwppv2/lF2bfNXo87JlEzloLOdQwBctajM40hE5EqdaB/gbNeQdvFJ4NU3hikqyPP1WFAylYNau5PJ1PIFSqZEstXeUBSAnT5dIyKSCckSX5i7NtQwz6clPlAylZNau4cBWKFkSiRrNYQibFk6n2Xqei4B9tbZbiJ9ozxwjT938U1QMpWDWruHqCguYH6pf7N4Ebm47sEx3jzTra7nEnh7UiU+v+7im6BkKge1dA+zfGEZZupLI5KNnj+mruciiYTj6cNt3Lm+hooSf/dMVDKVg1q7h1i+QKUBkWzVkOp6vk1dzyXA3m7pIdw7wgPX+HcX3wQlUznGOUdr97CSKZEsNRZL8MPj7ezcpK7nEmz1jWGK8v29i2+Ckqkc0zU4xtBYXIvPRbLUG6e6GBiNZcUbiMhccc7xVGOYO9ZXM9/nJT5QMpVzJnbyaWZKJDvtDUUoLsjj9nW51/XczKrM7F/MrMnMQmb2Ua9jEn96p6WH870j7N7m7118E7TdK8e8l0xpZkok2zjnaGiKcOvaRZQW5Xsdzlz4P8DTzrlPm1kRoD9UMq36xjCF+cY9W7JjhlYzUznmQsPOhZqZEsk2zdEBWrqGc7LEZ2bzgTuBvwRwzo0553o8DUp8yTlHfWMbt6+rprLU/yU+UDKVc1q6h6gsLcyKGrOIvN+Frue52V9qDdAO/JWZvW1mj5uZTiAqH3CotZdzPcNZU+IDJVM5Rzv5RLJXQyjC1cvms7QyJ8dwAXAD8E3n3PXAIPCVqQeZ2SNmdsDMDrS3t2c6RvGB+sYwBXnGvVlS4gMlUzlHyZRIduoaHOOts905WeJLaQVanXOvpy7/C8nk6n2cc48557Y757bX1NRkNEDxnnOO+sNhbltXTVVZkdfhzJiSqRyS7DE1pLYIIlno+aZk1/NcPYWMc64NaDGzjamrdgJHPQxJfOjwuT5auoZ5IItKfKDdfDmlY2CMkfGEZqZEslBDU4TFFcVsXZbTXc9/Bfi71E6+k8BnPY5HfGZPY5j8LCvxgZKpnHJhJ59mpkSyylgswYvHO/jktUtzuuu5c+4dYLvXcYg/Oed46nCYW9cuYkF59pT4QGW+nDLRY2rFQiVTfqEmhTITr5/qTHY935Rdn8ZF0unI+T7OdA5lXYkPZphMmdn9ZnbMzJrN7AO7L1LH3GVm75jZETP7YXrDlJloSc1M1anM5ycTTQo3AdcCIY/jER9qCEUpLsjjthzsei4yU/WpEt/Hr/b/iY2numyZz8zygW8A95LcjbHfzJ50zh2ddEwV8OfA/c65s2aWmysofa61e5gFZYXMK1b11g8mNSn8OUg2KQTGvIxJ/Mc5x95QhNvXVedq13ORy0o26gzz0TWLWJhlJT6Y2czUTUCzc+5k6s3gCeDBKcf8J+B7zrmzAM65aHrDlJlItkVQic9H1KRQLuvd6ACt3cPsyNFdfCIzEQr3c7pzKKsadU42k2SqDmiZdLk1dd1kG4AFZvaCmb1pZj+TrgBl5lq7h1ih08j4yWWbFKpBoewNRQC0XkoCrb4xTJ7Bx6/OznEwk2Rquq0lbsrlAuAjwAPAfcBvm9mGD9yR3jjmTCLhNDPlP5dtUqgGhdIQirK1bj5LKku8DkXEExMlvlvWLKJ6XrHX4VyRmSRTrcCKSZeXA+enOeZp59ygc64DeJHkYtv30RvH3OkYGGUsph5TfqImhXI5nQOjya7nmpWSADsW6edkx2DWlvhgZsnUfmC9ma1ONVp7CHhyyjH/DtxhZgVmVgbcjHYtZVTLRFsEzUz5zUSTwkPAdcDXvA1H/OT5Y+04B/fk7ilkRC6r/lCyxHdfFu7im3DZbV/OuZiZfQF4BsgHvuWcO2Jmn0/d/qhzLmRmTwOHgATwuHPu8FwGLu/3XsNOzUz5iZoUyqU0hCLUzi9ma918r0MR8Uz94TZuWr2QmorsLPHBDDugO+fqgfop1z065fIfAH+QvtDkw5ho2KkeUyLZYTQW58Xj7fzYdXWY5W7Xc5FLOR7ppzk6wM9+9GqvQ5kVdUDPEa3dQywqL6KsSD2mRLLB6ye7GByL5+yJjUVmYs+hMGZw39bsLfGBkqmc0do9zHKdRkYkazSEIpQUquu5BNtTh8PcuGohiyuyezerkqkc0dI1pPVSIlki2fU8yu3rqikpVNdzCabmaD/HIwNZeS6+qZRM5YBEwnGuZ1jJlEiWOB4Z4FzPMDvUEkECbM+hNszg/iwv8YGSqZwQ7R9lPO7UFkEkS1zoeq71UhJgTx0Os/2qBdTOz+4SHyiZygktaosgklUaQhG21VXmxJuIyJU40T5AU1t/VjfqnEzJVA54r8eUZqZE/K5jYJS3W3o0KyWBVn8oDORGiQ+UTOWE1q5kjynNTIn43/NNUXU9l8CrP9zGR65awNLK3HjfUjKVA1q7h6mpKNauIJEs0BCKsmR+CVcvU9dzCaZTHYOEwn05U+IDJVM5oaVbbRFEssFoLM5L77azY/NidT2XwKpvTJb4duVIiQ+UTOWE1u5hrZcSyQKvqeu5CPWNYa5fWcWyqtyZBFAyleXiCcf5nmFWaGZKxPcmup7fulZdzyWYznQOcuR8X0406pxMyVSWa+sbIZZwmpkS8TnnHA2hKLevq9H6RgmsPY25tYtvgpKpLNfapR5TItngWKSfcz3DaokggfZUYxvXrqjKuQkAJVNZrrVbbRFEskFDKArAzk1KpiSYznYO0Xiulwe25dasFCiZynoTyVSdkikRX9sbinDN8koWq+u5BFT94YldfLm1XgqUTGW9lu4haucXU1ygNRgiftUxMMo7LT3s1ImNJcCeagxzzfJKVizMrRIfKJnKeq3dQzlXexbJNftSXc+1XkqCqqVriIOtvTnVqHMyJVNZrrVbbRFE/K4hFGFppbqeS3A9lSrx7c7BEh8omcpqsXiCcO+IZqZEfGxkPM5L73awY5O6nktw1Te2sbVuPisX5eb7lZKpLBbuHSGecNrJJ+Jjr53sZGgsrhMbS2Cd6xnmnZaenC3xgZKprPZeW4TczPRFckFDKEppYT4fXbvI61BEPPFUY26X+EDJVFZr7U427FyxUDNTIn6U7Hoe4fb11ep6LoFV3xhmy9L5rKou9zqUOaNkKou1dA9jBksrlUyJ+FEo3M/53hE16pTAOt8zzFtne3jgmtydlQIlU1mttXuIJfNLKCrQf6OIH+1rigCwQ8mUBNRTh9sA2JVj5+KbSu/CWSzZFkHrpUT8am8oyrXqei4B9lRjmE1LKlhTM8/rUOaUkqks1to1pJ18Ij7V3j/KwdYedmoX3/uYWb6ZvW1mP/A6Fplbbb0jHDjTzQM5vItvgpKpLDUWS9DWN6JkSsSnnlfX84v5IhDyOgiZexONOncpmRK/ausdIeFgeQ6e40gkF+wNRVhWWcKWpep6PsHMlgMPAI97HYvMvaca29hYW8G6xbld4gMlU1lroi2CZqZE/OdC1/PN6no+xZ8A/xVIeByHzLFo3wj7z3TldKPOyZRMZamWiR5TWoAu4js/OtnJ8Hhc66UmMbNPAFHn3JuXOe4RMztgZgfa29szFJ2k29NH2nAOdm/L7V18E5RMZanW7mHyDJZUapeQiN80hCKUFeXz0TXqej7JbcCPmdlp4Algh5n97dSDnHOPOee2O+e219TUZDpGSZM9h8KsXzyP9bUVXoeSEUqmslRr9zBLK0spzNd/oYifOOfYF4py+zp1PZ/MOfcbzrnlzrlVwEPAPufcT3sclsyBaP8Ib5wOTokPlExlrdZutUUQ8aOj4T7O947oxMYSWM8ciaRKfEqmxOdauoZ1gmMRH9oXigJw1yaVqC7GOfeCc+4TXschc6P+UJi1NeVsqM39XXwTlExlodFYnEj/iE5wLOJDe5uiXLuiisUVWs8owdMxMMrrpzp5YNvSQO1kVTKVhcI9IziHZqZEfCbaP8LBlh7u0bn4JKCeOdJGwgWjUedkSqayUIt6TIn40vNNyRKfWiJIUNU3hllTXc6mJcHYxTdByVQWau0eBpRMifjN3lCUZZUlbF4arDcSEYDOgVF+dKKT3QEr8YGSqazU2j1EQZ6xRGeiF/GNkfE4L7/bwc7NtYF7IxEBePZoJFXiC0ajzsmUTGWh1u5hllaVUKAeU75nZvlm9raZ/cDrWGRu/ejERNdzrZeSYKpvDLNqUVkgz0c5o3djM7vfzI6ZWbOZfeUSx91oZnEz+3T6QpSpWrqGWF6lxedZ4otAyOsgZO7tTXU9v0VdzyWAugbHeDWgJT6YQTJlZvnAN4BdwBbgYTPbcpHjvg48k+4g5f1au4fVFiELmNly4AHgca9jkbnlnGNfU5Q71qvruQTTc0fbiCdcoBp1TjaTmambgGbn3Enn3BjJcyo9OM1xvwJ8F4imMT6ZYmQ8TrR/VG0RssOfAP8VSHgch8yxI+f7CPeOaBefBNaexjZWLizj6mXBK/HBzJKpOqBl0uXW1HUXmFkd8OPAo+kLTaZzrkc7+bKBmX0CiDrn3rzMcY+Y2QEzO9De3p6h6CTd9jVFMYO7N2q9lARPz9AYrzZ3BLbEBzNLpqZ7ZtyUy38CfNk5F7/kHemNY9bOdiV7TK1cqJkpn7sN+DEzO01yNneHmf3t1IOcc48557Y757bX1Oj0I9mqIRTh2uVV1FQUex2KSMY9ezRCLOHYHcBdfBNmkky1AismXV4OnJ9yzHbgidQbx6eBPzezT029I71xzF5rKplaoWTK15xzv+GcW+6cWwU8BOxzzv20x2HJHIj2jXCwtZd7tItPAqq+MczyBaVsq6v0OhTPFMzgmP3AejNbDZwj+cbwnyYf4JxbPfGzmX0b+IFz7t/SF6ZMONs1RHFBHjXz9AlYxA/2qeu5BFjv0DivNHfw87etDmyJD2aQTDnnYmb2BZK79PKBbznnjpjZ51O3a51UBrV0DbN8QSl5ecF90WYb59wLwAsehyFzZG8oSl1VaeBOnyEC8FwownjcBe5cfFPNZGYK51w9UD/lummTKOfcz80+LLmYs11DWi8l4hMj43Febm7nJ7evCPSncgmu+sYwdVWlXLs8uCU+UAf0rOKco6VrSOulRHzi1RMdjIwnVOKTQOodHueld9vZvW1J4D9MKJnKIr3D4/SPxjQzJeITe0NRyovyuWXNQq9DEcm4BpX4LlAylUVauiZ6TCmZEvGac459oSh3rK+huEBdzyV46hvDLKss4foVVV6H4jklU1lEPaZE/OPI+T7a+kZ0YmMJpL6RcV483sGuADfqnEzJVBY5e6HHlLqfi3itIZTqer5JyZQEz75QlLF4ItCNOidTMpVFWrqHWFBWSEVJodehiAReQ1OE61ZUUa2ebxJAexrDLJlfwvUrFngdii8omcoiLWqLIOILkb4RDrX2co928UkA9Y+M88Pj7ezatkQ9D1OUTGWRlq4hliuZEvHce13PVeKT4NnXFGUslmC3dvFdoGQqS8QTjnM9w5qZEvGBhlCEuqpSNtaq67kET31jmNr5xXxkpUp8E5RMZYm2vhHG444Vaosg4qlk1/MO7tm8WLuYJHAGR2O8cKydXVuXqsQ3iZKpLHG2U20RRPzglWZ1PZfg2tcUZTSWYNdW7eKbTMlUlmhRWwQRX5joen6zup5LANU3hqmpKGb7Kr3+J1MylSVOdQ5SkGfUVSmZEvGKc459TRHu3KCu5xI8Q2Mxnj8WZdfWJeSrxPc+SqayxOmOQVYuLKMgX/9lIl45fK6PSN+oSnwSSM83tTMynmDXVu3im0rvzFniVMcgq6rLvQ5DJND2hiKYwV0ba7wORSTj6hvDVM8r5qbVKvFNpWQqCzjnONM5xKpFSqZEvLSvKcr16nouATQ8FmdfU5T7t9aqxDcNJVNZINI3yvB4nNXV2skn4pVI3wiN53pV4pNAeuFYlOHxOLtV4puWkqkscKpjEEBlPhEPNYSSXc91ChkJoj2NYRaVF6nEdxFKprLA6c5UMqUyn4hnGkIRli8oZUPtPK9DEcmokfFkie++rUu0Ceoi9KxkgVMdgxTl57FMbRFEPDE8NtH1vFZdzyVwXjjWztCYSnyXomQqC5zqGGTlojIt+hPxyCvNHYzGEjqxsQRSfWOYheVF3KJGtRelZCoLnO4YVIlPxEMNTRHmFRdw8+pFXociklEj43EaQhHuu7pWJb5L0DPjc4mE40zXkHbyiXgkkXA0hKLcuaGaogL9ybxSZrbCzJ43s5CZHTGzL3odk1zei8fbGRyLq1HnZRR4HYBc2vneYcZiCe3kE/HI4fO9RPtH2blJu/hmKQb8mnPuLTOrAN40s+ecc0e9Dkwurr4xTFVZIR9dq1nZS9HHLJ873ZE8wfFqlflEPLE3FFXX8zRwzoWdc2+lfu4HQkCdt1HJpYyMx9kbinLfliUUqsR3SXp2fO5Up3pMiXhpX1OEG1YuYJG6nqeNma0Crgden+a2R8zsgJkdaG9vz3hs8p6X3+1gYDTGrm1LvA7F95RM+dzpjkGKC/JYMr/E61BEAqetd4TD5/q0iy+NzGwe8F3gS865vqm3O+cec85td85tr6nRbKCX6hvDVJYWctu6aq9D8T0lUz53sn2A1dXl5KktgkjGNTRFAHU9TxczKySZSP2dc+57XscjFzcai/Pc0Qgf31KrEt8M6BnyuXejA6yvrfA6DJFAaghFWbGwlPWL1fV8tizZ7fQvgZBz7o+9jkcu7ZXmDvpHY+zepl18M6FkyseGxmKc6xnWH3IRDwyPxXmluYOdm9T1PE1uAz4D7DCzd1Jfu70OSqa351Ab80sKVOKbIbVG8LGT7YM4B+uUTIlk3Muprucq8aWHc+5lQFlpFhiLJXjuaBv3blmi3mozpGfJx5qjAwCamRLxQEMoQkVxATet1ik0JFheOdFB30iM3drFN2NKpnysOTpAfp5xlXpMiWRUIuFoaIpy54YafTKXwKk/FKaiuIDb16vEN1P6K+Fj70b7WbWoTH/MRTKs8Vwv7f2jaokggTMeT/Ds0Qj3bqmluCDf63Cyht6lfaw5OqD1UiIeaAhFyDO4a6OSKQmWV0900js8zi7t4vtQlEz51FgswenOIdYvVlsEkUxraIpyw8oFLCwv8joUkYyqPxRmXnEBd6jE96EomfKpUx2DxBOO9bWamRLJpHDvMEfO97FTu/gkYMbjCZ452sY9mxdTUqgS34ehZMqnmtqSZ1nYtGS+x5GIBEtDKArAPVovJQHz2slOeoZU4rsSSqZ8KhTupzDfWFOjnXwimdQQirByYZnWK0rg1DeGKS/K52MbdE7ED0vJlE81tfWxbnGFzokkkkFDYzFeOdHJzs2L1fVcAiUWT/DMkQg7N9eqxHcFZvRObWb3m9kxM2s2s69Mc/tPmdmh1NerZnZt+kMNlqZwP5uXaPF5NjOzFWb2vJmFzOyImX3R65jk0l5+t4MxdT2XAHr9VBddg2Nq1HmFLns6GTPLB74B3Au0AvvN7Enn3NFJh50CPuac6zazXcBjwM1zEXAQdA+O0dY3wqalSqayXAz4NefcW2ZWAbxpZs9NGTviIw2hKBXFBdy4Sl3PJVj2NIYpK8pXO5ArNJOZqZuAZufcSefcGPAE8ODkA5xzrzrnulMXXwOWpzfMYGlq6we0+DzbOefCzrm3Uj/3AyGgztuo5GIudD3fqK7nEiyxeIJnDrexY5N28V2pmfzFqANaJl1u5dJvCJ8DnppNUEEXCqd28mlmKmeY2SrgeuB1j0ORizh0rpeOgVHt4pPAeeN0F52DY+zWLr4rdtkyH9Of5dtNe6DZ3SSTqdsvcvsjwCMAK1eunGGIwRMK97GovIjFFSVehyJpYGbzgO8CX3LO9U25TWPCJy50Pd+gZEqCpb4xTGlhPnerxHfFZjIz1QqsmHR5OXB+6kFmdg3wOPCgc65zujtyzj3mnNvunNteU6OtlxfTeK6XrXWVXochaWBmhSQTqb9zzn1v6u0aE/6xNxTlI1ctYIG6nkuAxBOOpw9H2LFpMaVFKvFdqZkkU/uB9Wa22syKgIeAJycfYGYrge8Bn3HOHU9/mMExPBbn3egA1yxXMpXtLLm3/i+BkHPuj72ORy7ufM8wobC6nkvw7D/dRcfAKLu0i29WLlvmc87FzOwLwDNAPvAt59wRM/t86vZHgf8OLAL+PNWbJeac2z53Yeeuo+E+4gnHNcurvA5FZu824DNAo5m9k7ruN51z9d6FJNNpaFLXcwmm+sYwJYV57Nik1/5szGTNFKk//vVTrnt00s+/APxCekMLpsbWHgDNTOUA59zLTL/mUHymIRThqkVlrK1R13MJjnjC8dThNu7euJiyohmlA3IR2v/rM4fO9bK4opja+Vp8LpIJQ2MxXj3Ryc5Ntep6LoHy5plu2vtHdS6+NFAy5TOHWns1KyWSQS9d6HquMocES31jmOKCPHaqxDdrSqZ8ZGA0xon2AbbVVXkdikhgNIQiVJQUcONqdT2X4EgkHE8dDnPXxhrKi1Ximy0lUz5ysKUH5+DaFZqZEsmERMKxr6mdj22o0UnFJVDeOttNpG9UjTrTRH89fGT/6S7M4IarFngdikggHGztSXU9V0sECZY9jWGKCvLUDiRNlEz5yJtnutlYW8H8kkKvQxEJhIZQNNn1fKMapkpwJBKOpxrb+NiGGuapxJcWSqZ8IhZP8NaZbp2tXiSD9oYibL9qIVVl6nouwfF2Sw9tfSPsVqPOtFEy5RNNbf0MjsXZvkolPpFMONczTFNbPzu1i08Cpr4xTFG+SnzppGTKJw6c7gJgu2amRDJiXygCoDcUCZRkiS/MnRuqtaQkjZRM+cQbp7tYVllCXVWp16GIBMLeUJRVi8pYW1PudSgiGXOwtYfzvSPs2qpdfOmkZMoH4gnHqyc6uXVdtdehiATC4GiMH53oZOdmdT2XYKlvDFOYb9yzRTOy6aRkygeOnO+lZ2icO9YrmRLJhJfe7WAsntB6KQkU5xz1jW3csb6GylKV+NJJyZQPvPRuBwC3rlUyJZIJF7qea42iBMih1l7O9Qyza6t28aWbkikfeKW5g01LKqipKPY6FJGcl0g4nj8W5a6Ni9X1XAJlosT38S1KptJNf0k8NjwW58DpbpX4RDLkndYeOgbGdGJjCRTnHPWHw9y2rprKMpX40k3JlMdebk6u3bhzgzowi2RCQyhCfp7xMY05CZDGc720dA2zW7v45oSSKY89e6SNipICblmzyOtQRAKhIRTlI1ctUNdzCZQ9h5IlvvuuVolvLiiZ8lA84WhoirJjk9ZuiGRCa/cQTW39KvFJoDjn2NOoEt9c0ju4h948003X4JgWA4pkyL6mKKCu514xs/vN7JiZNZvZV7yOJygOtfbS2j3MA9tU4psrSqY89PThNory8/iYzlgvkhF7Q1FWV5eztmae16EEjpnlA98AdgFbgIfNbIu3UQXDHu3im3NKpjwSiyf4/qHzfGxjDfOKC7wORyTnDYzGeO1EJzs3qcTnkZuAZufcSefcGPAE8KDHMeU85xx7DoWTjTpV4pszSqY88nJzB+39o/zHG5Z7HYpIILz8bnuq67lKfB6pA1omXW5NXSdz6GCqUedulfjmlJIpj3zvrXNUlRVy9yaV+EQyYW8oyvySAravWuB1KEE13UkQ3QcOMnvEzA6Y2YH29vYMhJXb9hw6T2G+ca/OxTenlEx5oG9knGeOtPHJa5ZRXJDvdTgiOS+ecDzfpK7nHmsFVky6vBw4P/Ug59xjzrntzrntNTX6sDkbiUTyXHx36lx8c05/VTzwT/tbGI0l+MntKy5/sIjM2jstPXQOjunExt7aD6w3s9VmVgQ8BDzpcUw57eXmDs71DPNj1y3zOpScp5XPGRZPOL7zozNsv2oB25ZXeh2OSCBMdD2/a4OSKa8452Jm9gXgGSAf+JZz7ojHYeW0v3/9LAvLi7hfJzaec0qmMmxfU5SzXUN8+f5NXociEhgNoSjbr1qg3Uwec87VA/VexxEEkb4RngtF+Nztq7WcJANU5ssg5xzffKGZZZUlfPxqLQYUyYSWriGORfq5R7v4JED+/vWzxBOOh29a6XUogaBkKoNeON7OW2d7+KW712kRrEiGvNf1XCU+CYa+kXH+6pVT3LulltXV5V6HEwh6R88Q5xz/+7njLF9QqoXnIhm0NxRhTXU5a9T1XALiO6+epm8kxhd3rvc6lMBQMpUh333rHIdae/nizvUUFehpF8mEgdEYr5/s0qyUBEb34Bh/8dIpdm5azNY6bXLKFL2rZ0DP0Bhfqw9xw8oqdTwXyaCXjqvruQTLHzx7jIHRGP/l/o1ehxIoSqYy4Hd/EKJ3eJzf+9Q28vKmawIsInNhbyhKZWkh269S13PJfQdbeviHN87yc7euYtOS+V6HEyhKpubYv719ju++1cov3bWWLcv04hbJlHjC8fyxKHdtrKFAGz4kxw2OxvjP//gOtRUlfOkerZXKNPWZmkNNbX381r82cuOqBVoIKJJh77R00zU4phKf5DznHL/974c53TnI3//iLVSUqJ9apunj2hwJ9w7zc9/aT0VJIX/68PX6ZCySYXtDUQryjI9t0PndJLf92b5mvvfWOX5153puWbPI63ACSe/wc6Cla4iHHnuNwdEYf/XZG1laWep1SCKB0xCKcOOqhTrBq+S0b79yij967jj/4fo6fnWHKiBeUTKVZgdbeviJR39E9+AYf/25m9i8VOukRDKtpWuI45EBtUSQnJVIOP742WN89ftHuXdLLV//9DXa4OQhrZlKk3jC8e1XT/P1p5qoqSjmnz7/Ue2mEPFIQygCoPVSkpPa+0f5tX8+yIvH2/nJ7cv52o9v01ISjymZSoNXT3Tw9aePcbClh52bFvOHP3EtC8qLvA5LJLAamqKsqSnXqTQkp4zG4jzxRgt/+OwxRmMJfu9TW/mpm1diphkprymZukJjsQT7mqL81SuneP1UF7Xzi/mT/+s6HrxumV7YIh7qHxnntZOdfPa21V6HIpIWXYNjfPfNVh5/+SSRvlFuXbuI3/3UVtbqFEm+MaNkyszuB/4PkA887pz7/Sm3W+r23cAQ8HPOubfSHKvneofG+dHJDn54vJ1njkToGhyjdn4xv/PJLTx800pKCvO9DlF85HLjRubGS+92MB537Nyk9VKSnZxznOkc4pUTHew9GuGldzuIJRy3rl3EH//kddy6dpE+tPvMZZMpM8sHvgHcC7QC+83sSefc0UmH7QLWp75uBr6Z+p51EglHx+AoLV3DtHYP0dI1RKitn8PnejnTOQRARXEBd26s4dM3LOeO9dWqVcsHzHDcyBzYG4pQWVrIR9T1XHxuNBYn3DPCuZ5hzvUMcyI6wNFwH6FwPx0DowDUVZXyuTtW86nr6rShycdmMjN1E9DsnDsJYGZPAA8Ck98UHgS+45xzwGtmVmVmS51z4Q8b0Mh4nBePt5NwAI6Eg4RLfnfO4SZdTjiHu3Db+y9P/p1YwjEyHmdkPMHIeJzRWILR8TgjsTjDY3F6h8fpGRqne2iM3uHx1GO/Z/mCUrbVVfKT21dw46qFXL+yikIlUHJpMxk3MzI4GuPVE51pDi93vXCsnbvV9Tyn9Q6N8/qp5JhwJP/+Q/L9YeLPd/Ln965Lvj1Nc1vq6oljUndF6qdJv//e70wcT+p452A8nmAsnmAsNukrdXk0lmBoLEbv8Di9wzH6hsfpGx6nfzT2vn9XUX4e6xbP466NNVy7vJLb1lWzurpcs1BZYCbJVB3QMulyKx+cdZrumDrgfcmUmT0CPAKwcuXKaR+sb2ScR/7mzRmE9eEV5edRXJBHcWE+JYV5lBTmU1yQR1VZIUurSllQVsiCsiKq5xWzYmEpKxaUsXxBGaVFKt/JhzaTcTOjMRHpG+EXv3NgDkLMXfdvXeJ1CDKHTnUOztn7RDoU5BlFBXnJr/zk97KifCpLC6mrKmHz0goqS5PvN8uqSqlLfS2tKtEH9Sw1k2RqupTYXcExOOceAx4D2L59+wduB1hQVsQPfuV2zCDPLPUFZjbpuuR3u8j3C7+DYXnJF3ZxQT756sEhmZO2MbGsqpQf/Mrt6Y0uhxUV5LF+sRbm5rINtfPeNyZs4u+9vffze9cnv5O6PflT6j2FDx5/4ffMLgzi993/xB3w/usKUh/Wi/Lz1O8pgGaSTLUCKyZdXg6cv4JjZqQwP4+tdZVX8qsifpK2MVFSmK8xITJJWVGBxoT4ykzmE/cD681stZkVAQ8BT0455kngZyzpFqD3StZLieSQmYwbERHJAZedmXLOxczsC8AzJLd4f8s5d8TMPp+6/VGgnmRbhGaSrRE+O3chi/jfxcaNx2GJiMgcmFGfKedcPcmEafJ1j0762QG/nN7QRLLbdONGRERyj7YNiIiIiMyCkikRERGRWVAyJSIiIjILSqZEREREZkHJlIiIiMgsKJkSERERmQUlUyIiIiKzYJPPpJ3RBzZrB85c4pBqoCND4cyUH2MCf8blx5jg4nFd5ZyryXQwk2lMpJUf4/JjTKAxkW5+jAn8GVe2xXTRMeFZMnU5ZnbAObfd6zgm82NM4M+4/BgT+DeumfBj7H6MCfwZlx9jAv/GNRN+jN2PMYE/48qlmFTmExEREZkFJVMiIiIis+DnZOoxrwOYhh9jAn/G5ceYwL9xzYQfY/djTODPuPwYE/g3rpnwY+x+jAn8GVfOxOTbNVMiIiIi2cDPM1MiIiIivuerZMrMfsLMjphZwsy2T7ntN8ys2cyOmdl9Hsb4VTM7Z2bvpL52exjL/anno9nMvuJVHFOZ2Wkza0w9Pwc8iuFbZhY1s8OTrltoZs+Z2bup7wu8iO3D0Jj40LFoTFw8Bo2JzMWoMXEZuTYmfJVMAYeB/wC8OPlKM9sCPARcDdwP/LmZ5Wc+vAv+t3PuutRXvRcBpP793wB2AVuAh1PPk1/cnXp+vNr2+m2Sr5XJvgI0OOfWAw2py36nMTFDGhOX9W00JjJJY+LycmZM+CqZcs6FnHPHprnpQeAJ59yoc+4U0AzclNnofOcmoNk5d9I5NwY8QfJ5EsA59yLQNeXqB4G/Tv3818CnMhnTldCY+FA0Ji5BYyKQNCYuIZ1jwlfJ1CXUAS2TLremrvPKF8zsUGqK0Ktpcb89J5M54Fkze9PMHvE6mElqnXNhgNT3xR7HMxt++//XmLg0jYm557f/f42JS8upMVEwpyFNw8z2Akumuem3nHP/frFfm+a6OduGeKkYgW8Cv5t6/N8F/gj4+bmK5RIy+px8SLc5586b2WLgOTNrSn0CkGloTKSNxkSO0JhIG42JDMl4MuWcu+cKfq0VWDHp8nLgfHoi+qCZxmhmfwH8YK7iuIyMPicfhnPufOp71Mz+leRUsx8GScTMljrnwma2FIh6HRBoTKSRxsSHpzFxhTQmZifXxkS2lPmeBB4ys2IzWw2sB97wIpDUkzvhx0kuhvTCfmC9ma02syKSCy+f9CiWC8ys3MwqJn4GPo53z9FUTwI/m/r5Z4GLfcLNBhoTH6Qx8eFpTMwBjYlLy8kx4ZzzzRfJF10rMApEgGcm3fZbwAngGLDLwxj/BmgEDqWe9KUexrIbOJ56Xn7L6/+/VExrgIOpryNexQX8AxAGxlOvqc8Bi0juzng39X2h18/XDP4dGhMfLhaNiYvHoTGRuRg1Ji4dU86NCXVAFxEREZmFbCnziYiIiPiSkikRERGRWVAyJSIiIjILSqZEREREZkHJlIiIiMgsKJkSERERmQUlUyIiIiKzoGRKREREZBb+f/Weil5PL7lAAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 720x360 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import tensorflow as tf\n",
    "import numpy as np\n",
    "import matplotlib.pylab as plt\n",
    "\n",
    "fig, ax = plt.subplots(1, 3, figsize=(10,5))\n",
    "x = np.arange(-10.0, 10.0, 0.1)\n",
    "y = tf.keras.activations.sigmoid(x)\n",
    "ax[0].plot(x, y);\n",
    "ax[0].set_title(\"sigmoid\")\n",
    "y = tf.keras.activations.relu(x)\n",
    "ax[1].plot(x, y);\n",
    "ax[1].set_title(\"relu\")\n",
    "y = tf.keras.activations.elu(x)\n",
    "ax[2].plot(x, y);\n",
    "ax[2].set_title(\"elu\");"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"sequential\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "flatten (Flatten)            (None, 150528)            0         \n",
      "_________________________________________________________________\n",
      "dense (Dense)                (None, 128)               19267712  \n",
      "_________________________________________________________________\n",
      "dense_1 (Dense)              (None, 5)                 645       \n",
      "=================================================================\n",
      "Total params: 19,268,357\n",
      "Trainable params: 19,268,357\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model = tf.keras.Sequential([\n",
    "   tf.keras.layers.Flatten(input_shape=(IMG_WIDTH, IMG_HEIGHT, 3)),\n",
    "   tf.keras.layers.Dense(128, activation='relu'),\n",
    "   tf.keras.layers.Dense(len(CLASS_NAMES), activation='softmax')\n",
    "])\n",
    "model.summary()\n",
    "tf.keras.utils.plot_model(model, show_shapes=True, show_layer_names=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"sequential_1\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "flatten_1 (Flatten)          (None, 150528)            0         \n",
      "_________________________________________________________________\n",
      "dense_2 (Dense)              (None, 5)                 752645    \n",
      "=================================================================\n",
      "Total params: 752,645\n",
      "Trainable params: 752,645\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "model = tf.keras.Sequential([\n",
    "   tf.keras.layers.Flatten(input_shape=(IMG_HEIGHT, IMG_WIDTH, 3)),\n",
    "   tf.keras.layers.Dense(len(CLASS_NAMES), activation='softmax')\n",
    "])\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "_JUV92GTvyj2",
    "outputId": "37c0b535-f3dd-4a41-e611-2f2345bd3fb6"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "2022-02-17 14:48:37.005204: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:185] None of the MLIR Optimization Passes are enabled (registered 2)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "104/104 [==============================] - 235s 2s/step - loss: 16.1698 - accuracy: 0.2067 - val_loss: 1.7696 - val_accuracy: 0.1919\n",
      "Epoch 2/10\n",
      "104/104 [==============================] - 127s 1s/step - loss: 1.6138 - accuracy: 0.2524 - val_loss: 1.6083 - val_accuracy: 0.2351\n",
      "Epoch 3/10\n",
      "104/104 [==============================] - 123s 1s/step - loss: 1.6054 - accuracy: 0.2458 - val_loss: 1.6078 - val_accuracy: 0.2351\n",
      "Epoch 4/10\n",
      "104/104 [==============================] - 124s 1s/step - loss: 1.6034 - accuracy: 0.2458 - val_loss: 1.6075 - val_accuracy: 0.2351\n",
      "Epoch 5/10\n",
      "104/104 [==============================] - 108s 1s/step - loss: 1.6020 - accuracy: 0.2458 - val_loss: 1.6074 - val_accuracy: 0.2351\n",
      "Epoch 6/10\n",
      "104/104 [==============================] - 104s 1s/step - loss: 1.6008 - accuracy: 0.2458 - val_loss: 1.6076 - val_accuracy: 0.2351\n",
      "Epoch 7/10\n",
      "104/104 [==============================] - 147s 1s/step - loss: 1.6000 - accuracy: 0.2458 - val_loss: 1.6079 - val_accuracy: 0.2351\n",
      "Epoch 8/10\n",
      "104/104 [==============================] - 119s 1s/step - loss: 1.5994 - accuracy: 0.2458 - val_loss: 1.6083 - val_accuracy: 0.2351\n",
      "Epoch 9/10\n",
      "104/104 [==============================] - 131s 1s/step - loss: 1.5990 - accuracy: 0.2458 - val_loss: 1.6083 - val_accuracy: 0.2351\n",
      "Epoch 10/10\n",
      "104/104 [==============================] - 131s 1s/step - loss: 1.5991 - accuracy: 0.2458 - val_loss: 1.6090 - val_accuracy: 0.2351\n"
     ]
    }
   ],
   "source": [
    "BATCH_SIZE = 32\n",
    "\n",
    "train_dataset = (tf.data.TextLineDataset(\n",
    "    \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/train_set.csv\").\n",
    "    map(decode_csv)).batch(BATCH_SIZE)\n",
    "\n",
    "eval_dataset = (tf.data.TextLineDataset(\n",
    "    \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/eval_set.csv\").\n",
    "    map(decode_csv)).batch(BATCH_SIZE)\n",
    "\n",
    "# NN with one hidden layer\n",
    "model = tf.keras.Sequential([\n",
    "          tf.keras.layers.Flatten(input_shape=(IMG_HEIGHT, IMG_WIDTH, IMG_CHANNELS)),\n",
    "          tf.keras.layers.Dense(128, activation=tf.keras.activations.relu),\n",
    "          tf.keras.layers.Dense(len(CLASS_NAMES), activation='softmax')\n",
    "])\n",
    "model.compile(optimizer='adam',\n",
    "              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),\n",
    "              metrics=['accuracy'])\n",
    "# TODO 2: Train a Neural Network model\n",
    "history = model.fit(train_dataset, validation_data=eval_dataset, epochs=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 334
    },
    "id": "YcM4Uh07bPaR",
    "outputId": "29847fbd-e903-4860-8559-078678c5a162"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAl4AAAE9CAYAAADaqWzvAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABJ+ElEQVR4nO3deXzcVb3/8dcnkz1N0iZN031jh65QKIuUTSsoFwRFQEBAkIsKIoriityf6/Ve1wuIvSyK7JdFERFkR2RrC2UphdJ0SdM1nTRpmjT75/fHTGKaPW1mvpOZ9/PxyCOZ7zkz388k9PCZ8z3n8zV3R0RERERiLy3oAERERERShRIvERERkThR4iUiIiISJ0q8REREROJEiZeIiIhInCjxEhEREYmT9KADGIjRo0f71KlTgw5DROJo6dKl29y9JOg49pbGL5HU09f4NSwSr6lTp7JkyZKgwxCRODKzdUHHMBQ0fomknr7GL11qFBEREYkTJV4iIiIicaLES0RERCROhsUaL5Hhprm5mYqKChoaGoIOJeFlZ2czceJEMjIygg5FJOFpbEksezJ+KfESiYGKigry8/OZOnUqZhZ0OAnL3QmHw1RUVDBt2rSgwxFJeBpbEseejl+61CgSAw0NDRQXF2tg7IeZUVxcrE/vIgOksSVx7On4pcRLJEY0MA6Mfk8ig6N/M4ljT/4WSrxEktSIESOCDkFERLpQ4iUiIiIJp6WlJegQYiJmiZeZ3WZmW83snS7HrzSz981suZn9LFbnF5EId+frX/86M2bMYObMmdx3330AbNq0iQULFjBnzhxmzJjBP/7xD1pbW7nooos6+v7yl78MOHoRSUSf+MQnOOywwzjkkENYtGgRAI8//jiHHnoos2fP5qSTTgJg586dXHzxxcycOZNZs2bx4IMPArvPyD/wwANcdNFFAFx00UV89atf5YQTTuDaa6/ltdde4+ijj2bu3LkcffTRvP/++wC0trZyzTXXdLzu//zP//D0009zxhlndLzuk08+yZlnnhmPX8egxHJX4++BG4A72g+Y2QnA6cAsd280szFDecK12+r4xZMruWzBdGZMKBzKlxYZth566CGWLVvGm2++ybZt2zj88MNZsGABd999Nx/96Ef5zne+Q2trK/X19SxbtowNGzbwzjuRz0vV1dXBBi9D7s311Ty1YguXfGgaI3Mzgw5HhqnbbruNoqIidu3axeGHH87pp5/O5z//eV544QWmTZtGVVUVAD/4wQ8oLCzk7bffBmD79u39vvbKlSt56qmnCIVC7NixgxdeeIH09HSeeuopvv3tb/Pggw+yaNEi1qxZwxtvvEF6ejpVVVWMGjWKL33pS1RWVlJSUsLtt9/OxRdfHNPfw56IWeLl7i+Y2dQuh78A/NTdG6N9tg7lOVva2njkzY2cdNAYJV6SUM7+3cvdjp06axwXHDWVXU2tXHT7a93aP3XYRM6aN4mquia+cOfS3dru+/ejBnzuF198kXPPPZdQKERpaSnHHXccixcv5vDDD+dzn/sczc3NfOITn2DOnDlMnz6d1atXc+WVV/Lxj3+chQsXDv7NSkJ7dU2Y/3lmFZceO52XVm3jqH20Q244C2ps+c1vfsPDDz8MwPr161m0aBELFizoKKtQVFQEwFNPPcW9997b8bxRo0b1+9pnnXUWoVAIgJqaGi688EI++OADzIzm5uaO17388stJT0/f7XwXXHABd955JxdffDEvv/wyd9xxR88nCVC813jtDxxrZq+a2fNmdvhQvnhpQTYAm2u0NV2knbv3eHzBggW88MILTJgwgQsuuIA77riDUaNG8eabb3L88cdz4403cumll8Y5Wom1deF6RuZmsGx9NZ+55VV+8eTKoEOSYea5557jqaee4uWXX+bNN99k7ty5zJ49u8cE3t17PN75WNdyDHl5eR0/f+973+OEE07gnXfe4S9/+UtH395e9+KLL+bOO+/knnvu4ayzzupIzBJJvCNKB0YBRwKHA/eb2XTv4f8MZnYZcBnA5MmTB/TiI7LSyc0MsWVH49BFLDIE+voUmZMZ6rO9KC9zUDNcXS1YsIDf/e53XHjhhVRVVfHCCy/wX//1X6xbt44JEybw+c9/nrq6Ol5//XU+9rGPkZmZySc/+Un22WefjnUXkjzKq+qZUpTLgv1Gc87hk/ifZ1aRn53OZQv2CTo02QNBjC01NTWMGjWK3Nxc3nvvPV555RUaGxt5/vnnWbNmTcelxqKiIhYuXMgNN9zAr371KyByqXHUqFGUlpayYsUKDjjgAB5++GHy8/N7PdeECRMA+P3vf99xfOHChdx8880cf/zxHZcai4qKGD9+POPHj+eHP/whTz755KDfWzzEe8arAnjII14D2oDRPXV090XuPs/d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jRuprKxk1KhRjBs3jquvvpoXXniBtLQ0NmzYwJYtWxg7duyAX/fFF1/kyiuvBODAAw9kypQprFy5kqOOOoof/ehHVFRUcOaZZ7Lffvsxc+ZMrrnmGq699lpOPfVUjj322Fi9XenHm+urWRuu26Okq91Z8yaxs7GFPy3bSH1zKwUaX1POUI4r7s63v/3tbs975pln+NSnPsXo0ZG7JxQVFQHwzDPPcMcddwAQCoUoLCzsN/Fqv1k3QEVFBWeffTabNm2iqamJadOmAfDUU09x7733dvQbNWoUACeeeCKPPvooBx10EM3NzcycOXOQv62eJWXiVVqQjTtU1jYyfqR25EjA+pmZiqVPfepTPPDAA2zevJlzzjmHu+66i8rKSpYuXUpGRgZTp06loWFwpVd6u73qZz7zGebPn89f//pXPvrRj3LLLbdw4oknsnTpUh577DG+9a1vsXDhQq677rqheGsySOuq6pkygFIS/bn4mGmcN38KmelpNLe2kZ5me5XMyV4IaGwZqnGlt+e5+4D/m0pPT6etra3jcdfz5uX967/5K6+8kq9+9aucdtppPPfccx2XJHs736WXXsqPf/xjDjzwQC6++OIBxTMQSflxZWy0ltdm1fKSFHfOOedw77338sADD/CpT32KmpoaxowZQ0ZGBs8++yzr1q0b9GsuWLCAu+66C4CVK1dSXl7OAQccwOrVq5k+fTpf/vKXOe2003jrrbfYuHEjubm5nH/++VxzzTW8/vrrQ/0WZYDWheuYXJw7JK+VmZ5GQ3MrF9++mJ//fWX/T5CkMlTjSm/PO+mkk7j//vsJhyPl89ovNZ500kn89re/BaC1tZUdO3ZQWlrK1q1bCYfDNDY28uijj/Z5vgkTIjep+MMf/tBxfOHChdxwww0dj9tn0ebPn8/69eu5++67Offc3m4/PXhJmXiNiVavVxFVSXWHHHIItbW1TJgwgXHjxnHeeeexZMkS5s2bx1133cWBBx446Nf84he/SGtrKzNnzuTss8/m97//PVlZWdx3333MmDGDOXPm8N577/HZz36Wt99+u2PB/Y9+9CO++93vxuBdSn9qdjVTXd/MlKKhSbwAstLTmFSUww3PruLm58uG7HUl8Q3VuNLb8w455BC+853vcNxxxzF79uyORe2//vWvefbZZ5k5cyaHHXYYy5cvJyMjg+uuu4758+dz6qmn9nnu66+/nrPOOotjjz224zImwHe/+122b9/OjBkzmD17dseGIYBPf/rTHHPMMR2XH4eC9XbZIJHMmzfPlyxZ0n/HqOr6Jq6+bxmfP3Y6R+87uv8niAyxFStWcNBBBwUdxrDR0+/LzJa6+7yAQhoygx2/YmFj9S6+8cBbXLZgOgv2H7pK+q1tzlX3vsGjb23ih5+YwflHThmy15aeaWyJr1NPPZWrr76ak046qdc+gx2/knKN18jcTG6/uNtdPEREUtL4kTnceen8IX/dUJrxy7PnUN/Uyvf+/A4FORmcNnv8kJ9HJN6qq6s54ogjmD17dp9J155IysRLRPbM22+/3VEzp11WVhavvvpqQBFJossIpXHTeYdyzf+9yf6lqlIu3Q3HcWXkyJGsXBmb9YtJm3j9+x+X0NDcxh8+p5kvkYGaOXMmy5YtCzoMGWLf+9M7rNi0gwe+cHRMXj87I8QNnzkUiOwQq9i+i0lDuJ5MhjeNK7tLysX1EJkCX7+9PugwJIUNh/WTiUC/p9j7YGst8fot3/riGj76qxd4vbzv+kqy5/RvJnHsyd8iaWe8SguyeWHltqDDkBSVnZ1NOBymuLhYNY764O6Ew2Gys7ODDiWplYfrOXJ6cVzOddrs8fzxlXVcdNtr3PCZQxk9IosJo3IozMlgZ2ML5eHuH4gnFeWQn51Bza5mNmzf1a196uhccjPTqa5vYmN1993q00vyyM4IUVXXxOaa7u37jMkjKz1EZW0jlbWN3dr3Lx1BeiiNrTsa2LazqVv7gWPzSUszNtc0UFW3e7sZHDSuAIAN1buoqd/9RuKhNOOAsfkArK+qp7ahZbf2jJCxX2mkvTxcz87G3duzMtLYpyRyCXfNtjqaSWfTlq2MHBUZW9IMsjJCADQ0t9I1D0hLg6z03ttDaZDZZ7uRmR6Zo9nV1P1WUe3t7k5Dc1u39vSQkRHqv73NncYe2jNCRnoojbY2p7Gl9/bWNqepp/Z0Iz2t9/bMdCOUlkZLWxvNLd2TqMz0NEJpPY/hezp+JXXitbOxhZ2NLYzIStq3KQlq4sSJVFRUUFlZGXQoCS87O5uJEycGHUbSamhuZdOOhiGr4dWfMQXZ3HnJfM66+WU+e9trANx03qF8bOY4Xl+3veNYZ3/43BEct38JL63axhfu6l7r7cEvHMVhU4p4asVWrvm/N7u1P/6VYzlwbAF/eXMj339kebf2f3zjBCYV5XL/kvX81xPvd2t//XsfoSgvk9+/tJabnuteGuP9H55MVlqI3z63ij+8vHuNqoyQ8cGPPgbAL59cyQNLK3ZrH5mbwbLrFgLw48dW8Ld3Nu/WPmFkDv/85okAfOdPb/OPD3afMNi/dAR/v/o4AL52/zJWbdnBlfNHMWVkBUYk6RmTHymhtGVHA82tuycP2RlpjB4Rad9c00BL2+7tORkhikdkArCpehddnk5uZoiivEj7hupd3RKzEVkhRuZm4u5s6CEpzs9OpzAng7Y2Z2MPSXFhTjr52Rm0tLWxuaZ7UjwyN4MRWek0t7axZUf39lG5GeRlpdPU0sbWHpLq4rxMcjJDNDS39phUjx6RSXZGiF1NrYTrurePyc/qSDx7sifjV9JmJB1FVGsa2HeMFnxKfGVkZHTcjkIkSBXb63GHqcV7X7V+oCYV5fKXKz/E0nWRy41zJo0EIjNDN59/WLf+B0dnjOZOHtVj+/TRkTH8yOlFPba336Hk+ANKemxvTyxOnjG2Y/aos7ysyIzPJ+ZOYNbEkd3a09Mi/+M9+/DJHLXP7iWKOk9oX3jUVD58UOlu7Znp/+pw2YLpnD5nwm7t2Rn/+p/6VSftx3nzdy/J0Xni4BsnH0h1dEatfe4mKzeDg6KzmVWrttHQZUYtZ0QmB02N3HJn68pKWrvMWuUVZHHQ5EiNqk3vbaG1y6xPwcgcDppYCMD65ZvpkrdRWJTLQeMLaGtzyt/dQldFJXnsX5pPY0sr69/r/kG0uHQE+5SMYFdTKxtWdm8fMy6fKcV51DY0s3FVuFv72AkFTByVy/a6JjatqerWPn7SSMYWZlNZ28iWdd0vf0+cMoqS/Cw21zSwdX11t/bJ04oYFU08h0pS1vECWLFpB3e8vI4vHr+PFnmKDEOq4zU01m6r48ZnV/H5BdPZP3pJS0RiK+XqeEHkk9VPzhyaG1qKiAxXU0fn8V9nzQ46DBGJStpdjRCpqtzQ3H0xoIhIqqhrbNEuOJEEktSJ17wfPslP//Ze0GGIiATmirtf54ybXgo6DBGJilniZWa3mdlWM3unh7ZrzMzNLKY3UizKy2SLbpQtIilsXbiecYUq1yGSKGI54/V74OSuB81sEvARoDyG5wZgbGE2m5V4iUiKam1z1m+vj1spCRHpX8wSL3d/Aei+txN+CXwDYl9IubQgmy091A0REUkFm2p20dzqTCmKXykJEelbXNd4mdlpwAZ3714BLwZKC7LZWttIW9fCIyIiKaC9SvwUzXiJJIy4lZMws1zgO8DCAfa/DLgMYPLkyXt0zgX7lZCTEaK5rY2stNAevYaIyHA1bmQOXz5pP9XvEkkg8azjtQ8wDXgzeu+6icDrZnaEu2/u2tndFwGLIFKAcE9OeNQ+xRy1T3zuTyYikmimjc7jqx/ZP+gwRKSTuCVe7v42MKb9sZmtBea5e8zuZN3W5lTubCQnM0RBdkasTiMikpDWbqujMCdjyG95IiJ7LpblJO4BXgYOMLMKM7skVufqzeYdDcz/8dM8+uameJ9aRCRwX7r7da6+f1nQYYhIJzGb8XL3c/tpnxqrc7cryc/CDJWUEJGU4+6Uh+uZN2VU0KGISCdJXbk+I5TG6BFZbFXiJSIpZnt9M7WNLUwuVikJkUSS1IkXQGlBlma8RCTlrAvXATClSKUkRBJJ0ideYwuy2awiqiKSYsqrVMNLJBHFs5xEIM47cgo7G1qCDkNEJK4OnTyKn545k0ma8RJJKEmfeJ1wwJj+O4mIJJlJRbmcc8SeFZ8WkdhJ+kuNOxtbeKN8O3WNmvUSkQgzO9nM3jezVWb2zR7azzOzt6JfL5nZ7C7tITN7w8wejV/Ug/NS2TZWV+4MOgwR6SLpE68la6s446aXWLFpR9ChiEgCMLMQcCNwCnAwcK6ZHdyl2xrgOHefBfyA6F00OrkKWBHrWPfGVfcu47fPlQUdhoh0kfSJV2lBNgBbdjQGHImIJIgjgFXuvtrdm4B7gdM7d3D3l9x9e/ThK0RucQaAmU0EPg7cEqd4B62+qYXK2kYtrBdJQEmfeI2NJl4qKSEiUROA9Z0eV0SP9eYS4G+dHv8K+AbQNuSRDZH2HY2q4SWSeJI+8RqZm0FmepqKqIpIO+vhmPfY0ewEIonXtdHHpwJb3X1pnycwu8zMlpjZksrKyr2Nd9DWbouWktCORpGEk/SJl5mpiKqIdFYBTOr0eCKwsWsnM5tF5HLi6e4ejh4+BjjNzNYSuUR5opnd2fW57r7I3ee5+7ySkpKhjr9f5VWR4qlTNeMlknCSvpwEwP87fQaj87KCDkNEEsNiYD8zmwZsAM4BPtO5g5lNBh4CLnD3le3H3f1bwLeifY4HrnH38+MT9sB9Yu4EDhpXQGFuRtChiEgXKZF4qZaXiLRz9xYzuwJ4AggBt7n7cjO7PNp+M3AdUAzcZGYALe4+L6iYB2tMfjZj8rODDkNEepASidf6qnqWb6zho4eMJTqIikgKc/fHgMe6HLu508+XApf28xrPAc/FILy9dt/icg4eV8jMiYVBhyIiXST9Gi+Av72zicvvfJ1aFVEVkSTX3NrGtx9+h8eXbwo6FBHpQUokXh21vHSzbBFJchurd9Ha5kzRwnqRhJRaiZeKqIpIklsXVikJkUSWEomXiqiKSKpYFy2eqhkvkcSUEonXv2a8lHiJSHIrD9eRlZ7GmHyV0BFJRCmxqzEnM8Q9nz+SfUr0CVBEktvXFh7AefOnkJamHdwiiSglEi+Ao/YpDjoEEZGYy84IMXW0PmSKJKqUuNQI8NqaKh55s9tdQUREkoa785PHVrB4bVXQoYhIL1Im8bp/yXp+8tiKoMMQEYmZytpGfvfCat7duCPoUESkFymTeJUWZLG1tpHWNg86FBGRmGjf0Ti5WKUkRBJVyiReYwuyaW1zwjtVy0tEklN7Da+pKiUhkrBilniZ2W1mttXM3ul07L/M7D0ze8vMHjazkbE6f1cqoioiya48XEeawYSROUGHIiK9iOWM1++Bk7scexKY4e6zgJXAt2J4/t2UqoiqiCS5yp2NjB+ZQ2Z6ylzMEBl2YlZOwt1fMLOpXY79vdPDV4BPxer8XR0wNp9nrzmecYXZ8TqliEhc/eTMWTQ0twYdhoj0Icg6Xp8D7ovXybIzQkxTbRsRSXLZGaG+O2xfBw9cDM2a/RcZlLP/CMX77PXLBJJ4mdl3gBbgrj76XAZcBjB58uQhOe99i8vJzUzn32aPH5LXExFJFLUNzXzzwbf57FFTmD+9j4LRa16ADUth349Aum4rJDJgocwheZm4J15mdiFwKnCSu/da28HdFwGLAObNmzckNSDufrWcgpwMJV4iknTWhev569ubOHXWuL47VpVBWjqcey+EUubmJSIJI64rMM3sZOBa4DR3r4/nuQHGFGSzVbsaRSQJtZeS6LeGV7gMRk1V0iUSkFiWk7gHeBk4wMwqzOwS4AYgH3jSzJaZ2c2xOn9PxhZka1ejiCSldVV1AEzpr4ZXuAyK9n6diojsmVjuajy3h8O3xup8A1FakEXNrmYamlv7X4AqIjKMlIfrKc7LZERWH8N6WxtUrYbpx8UvMBHZTUoVe2mv5aXLjSKSbMyMQyYU9t2pdhO07IKi6fEJSkS6SamL/P82ezynzhpPTqZmu0QkufzkzJn9d6oqi3wfgi3xIrJnUirx0uVFEUlp4fbEa99g4xBJYSl1qbG5tY0fPPouT6/YEnQoIiJDZu22Os646Z8sXlvVd8eqMghlQcHE+AQmIt2kVOKVnmbc/Wo5L5eFgw5FRGTIrN62kzfKq0mzfjqGy6BoGqSl1NAvklBS6l+fmVFakKWSEiKSVNpreKmUhEjiS6nEC1REVUSSz7pwPXmZIYrz+rilSVsrbF8DxdrRKBKklEu8xhZks6VWM14ikjzKq+qZXJyHWR/XGmsqoLVJM14iAUu9xKswm6aWNvq4TaSIyLAyaVQOR+/Tx42xQaUkRBJESpWTAPjWKQfy7Y8dFHQYIiJD5j9On9F/J5WSEEkIKTfj1edUvIhIsgqXQUYu5I8LOhKRlJZyidf6qnq+dNfrvFG+PehQRET22iurwxz546d5q6K6745VZZFbBenDp0igUi7xAvjr25v4YOvOoMMQkYCY2clm9r6ZrTKzb/bQfp6ZvRX9esnMZkePZ5vZa2b2ppktN7P/iH/0u1u7rY7NOxoYldvHjkaIlpLQjkaRoKVc4lWSnwXAlhrtbBRJRWYWAm4ETgEOBs41s4O7dFsDHOfus4AfAIuixxuBE919NjAHONnMjoxL4L1YV1VPepoxrjC7906tLVC9TgvrRRJAyiVe2RkhRuVmqKSESOo6Aljl7qvdvQm4Fzi9cwd3f8nd29cjvAJMjB53d2+fLs+IfgW6Rbo8XM/EUTmkh/oYzqvXQVuLSkmIJICUS7wASguy2VyjIqoiKWoCsL7T44rosd5cAvyt/YGZhcxsGbAVeNLdX41FkAO1rqqOyf1VrK9aHfmuHY0igUu5chIA+5fmBx2CiASnp9XlPc5amdkJRBKvD3V0dG8F5pjZSOBhM5vh7u90ed5lwGUAkydPHqKwe/ahfUuYMLKPy4zQqZSEZrxEgpaSiddvzp0bdAgiEpwKYFKnxxOBjV07mdks4BbgFHcPd21392ozew44GXinS9siouvC5s2bF9NLkd885cD+O4VXQWY+5JXEMhQRGYCUvNQoIiltMbCfmU0zs0zgHOCRzh3MbDLwEHCBu6/sdLwkOtOFmeUAHwbei1fgXTW2tNLc2tZ/x6qyyD0aVUpCJHApmXj944NKzrjpn2zdoQX2IqnG3VuAK4AngBXA/e6+3MwuN7PLo92uA4qBm8xsmZktiR4fBzxrZm8RSeCedPdH4/wWOjz+zmYO/N7jrK7spzxOuEwL60USREpeamxqaeON8mo21jQwpqCftREiknTc/THgsS7Hbu7086XApT087y0gYdYqlIfraW1zxo/M6b1TSxPUrIdZn45fYCLSq5Sc8SqNJlubVctLRIaxdVX1lBZkkZ0R6r3T9rXgbdrRKJIgUjrx2qJLjSIyjJWH65lS1F8pieiORl1qFEkIKZl4Fedlkp5mSrxEZFhbG65jSnFu353CqyLfVUpCJCGk5BqvtDTjmH1HU5TXz73NREQSlLvzuQ9N44D+6hKGyyB7JOQWxSUuEelbzBIvM7sNOBXY6u4zoseKgPuAqcBa4NOdbssRV3/43BFBnFZEZEiYGZcfN4BZrKoyzXaJJJBYXmr8PZHCgp19E3ja3fcDno4+FhGRQdpe18TG6l20tfVTnzW8Wuu7RBJIzBIvd38BqOpy+HTgD9Gf/wB8Ilbn78+iF8r4yC+eD+r0IiJ75cHXKzj6p89Qs6u5907Nu2BHhXY0iiSQeC+uL3X3TQDR72PifP4OLW3OB1t3Ut/UElQIIrKXzOxBM/u4maXcRqG14ToKstMZmZvRe6eqNZHvutQokjASdrAys8vMbImZLamsrBzy1x/bUVKicchfW0Ti5rfAZ4APzOynZjaAGxcmh3XheqYU52F93Qaoo5TE9PgEJSL9infitcXMxgFEv2/traO7L3L3ee4+r6Rk6G/sqiKqIsOfuz/l7ucBhxLZsPOkmb1kZhebWR9TQcNfeVU9k1VKQmTYiXfi9QhwYfTnC4E/x/n8HVREVSQ5mFkxcBGRW/y8AfyaSCL2ZIBhxVRLaxsbtu9iSlF/iVcZ5I6G7ML4BCYi/YplOYl7gOOB0WZWAXwf+Clwv5ldApQDZ8Xq/P0ZV5jNhw8ao1peIsOYmT0EHAj8Efi39jWkwH2dbmyddNocfv7p2exTMqLvjlWrNdslkmBilni5+7m9NJ0Uq3MORl5WOrdceHjQYYjI3rnB3Z/pqcHd58U7mHjJTE/j9DkT+u8YLoN9Tox9QCIyYAm7uD5e3PupgSMiiewgMxvZ/sDMRpnZFwOMJy5WV+5kydoqWvuq4dW4E3Zu1oyXSIJJ6cTri3ct5exFrwQdhojsuc+7e3X7g+idMD4fXDjxce/i9XzmllfpYz9j5DIjKPESSTApnXhlhtLYWL0r6DBEZM+lWad6CmYWApJ+4ea6cB2Ti3JJS+sj9Wrf0aiq9SIJJSVvkt2utDCbrTsacfe+a+GISKJ6gsiGnZsBBy4HHg82pNhbF67vf0ejaniJJKSUnvEaW5BNU2sb2+v7uOWGiCSya4FngC8AXyJyD9hvBBpRjLn7AGt4rYYRYyGrn52PIhJXqT3j1amIqspKiAw/7t5GpHr9b4OOJV627Wyivql1YDNeWt8lknBSOvHavzSfC46cQl5WKOhQRGQPmNl+wE+Ag4Hs9uPunrTX1wpy0rnvsiOZNJDiqQd+LD5BiciADehSo5ldZWYFFnGrmb1uZgtjHVys7TtmBD/4xAymFOcFHYqI7Jnbicx2tQAnAHcQKaaatLLSQ8yfXsz4kTm9d2qogfptWlgvkoAGusbrc+6+A1gIlAAXE6lCP+w1t7ZR19gSdBgismdy3P1pwNx9nbtfDyR1xdBXV4f561ub+u4Uji6s16VGkYQz0MSrfcvfx4Db3f3NTseGtaN/+gw//OuKoMMQkT3TYGZpwAdmdoWZnQGMCTqoWLrntXJ+/Fg/Y1Z74qUZL5GEM9DEa6mZ/Z1I4vWEmeUDbbELK35KRmTpRtkiw9dXgFzgy8BhwPnAhUEGFGvrquqZ0t+Oxo5SEtNiH5CIDMpAF9dfAswBVrt7vZkVEbncOOyNLcxW4iUyDEWLpX7a3b8O7CRJxqT+lIfrWXhIad+dwmVQMBEy+lgHJiKBGOiM11HA++5ebWbnA98FamIXVvyUFmjGS2Q4cvdW4DBLoerHtQ3NhOuamFzUz4YglZIQSVgDTbx+C9Sb2WwixQnXEdk9NOyVFmSzbWcTTS1JceVUJNW8AfzZzC4wszPbv4IOKlbWhesBmNpv8VQlXiKJaqCXGlvc3c3sdODX7n6rmSXFOopj9xtNRiiN1jYPOhQRGbwiIMzuOxkdeCiYcGLroHEF/OMbJzAyN6P3TvVV0FCthfUiCWqgiVetmX0LuAA4Nrq2oo9/+cPHYVOKOGxKUdBhiMgecPeUWNfVLpRmAyicGr05tma8RBLSQBOvs4HPEKnntdnMJgP/Fbuw4qetzdm0o4G8zBAjc3XbIJHhxMxuJzLDtRt3/1wA4cTcn5dtYGdjC+fNn9J7J5WSEEloA1rj5e6bgbuAQjM7FWhw96RY47W9voljfvoMD7+xIehQRGTwHgX+Gv16GiggssMxKd23eD3/t6Si705VZWBpMGpqXGISkcEZ0IyXmX2ayAzXc0QKp/6PmX3d3R+IYWxxMSo3k4yQsWVHY9ChiMggufuDnR+b2T3AUwGFE3PrwvUcPnVU353CZVA4CdI1gy+SiAa6q/E7wOHufqG7fxY4Avhe7MKKn7Q0Y0y+anmJJIn9gMn9dTKzk83sfTNbZWbf7KH9PDN7K/r1UnRHN2Y2ycyeNbMVZrbczK6KwXvoUVNLG5tqdjG5v3vLVpVB8b7xCUpEBm2ga7zS3H1rp8dhBp60JTwVURUZnsyslt3XeG0Gru3nOSHgRuAjQAWw2Mwecfd3O3VbAxzn7tvN7BRgETCfyM24v+bur0fv4LHUzJ7s8tyYqNheT5vDlL4W17tDeDVMmh/rcERkDw008XrczJ4A7ok+Pht4LDYhxV9pQRbvba4NOgwRGSR3z9+Dpx0BrHL31QBmdi9wOtCRPLn7S536vwJMjB7fBGyK/lxrZiuACZ2fGyubahowo+/bBdVVQlOtFtaLJLABJV7u/nUz+yRwDJE1Xovc/eGYRhZH582fwvb6pqDDEJFBit4U+xl3r4k+Hgkc7+5/6uNpE4D1nR5XEJnN6s0lwN96OPdUYC7w6qCC3kPH7Dua935wMqG+CvWrlIRIwhvojFf7ItYH++04DB2z7+igQxCRPfP9zh8Co7c1+z7wpz6e01Pm0mMFZTM7gUji9aEux0cQGQ+/4u47enjeZcBlAJMn97vkbMCy0kN9d+goJTF9yM4pIkOrz3VaZlZrZjt6+Ko1s26DzXC1s7GFJWur2NHQHHQoIjI4PY1h/X2grAAmdXo8EdjYtZOZzQJuAU5393Cn4xlEkq673L3HCvnuvsjd57n7vJKSkn7CGZjfPP0Bv3u+rO9OVWWQlg4j+6jzJSKB6jPxcvd8dy/o4Svf3Qv29KRmdnV0R9A7ZnaPmWXv6WsNhbcqqvnUzS/zTkVS3PdbJJUsMbNfmNk+ZjbdzH4JLO3nOYuB/cxsmpllAucAj3TuEC0S/RBwgbuv7HTcgFuBFe7+iyF9J/145M2NvF6+ve9O4bJI/a7QgC9miEicxX1noplNAL4MzHP3GUCIyMAXmLEFkbxvs3Y2igw3VwJNwH3A/cAu4Et9PcHdW4ArgCeAFcD97r7czC43s8uj3a4DioGbzGyZmS2JHj+GyK3TToweX2ZmHxvyd9VFW5tTXlXPlH5LSazWwnqRBBfUx6J0IMfMmoFcepjmj6fSaOKlIqoiw4u71wHd6nAN4HmP0WVntrvf3OnnS4FLe3jei/S8RiymttQ20NTSxuS+Skm0tUUSr2kL4heYiAxa3Ge83H0D8N9AOZFt2TXu/vd4x9FZXlY6+VnpquUlMsyY2ZPRnYztj0dFS98klXXheqCfUhK1m6C5XgvrRRJcEJcaRxGpmTMNGA/kmdn5PfS7zMyWmNmSysrKmMdVqiKqIsPRaHevbn/g7tuBMcGFExt1jS2U5GcxpaiPS41V0YX3KiUhktCCuNT4YWCNu1cCmNlDwNHAnZ07ufsiItWimTdvXo9bvYfSf5x2CIU5GbE+jYgMrTYzm+zu5dBRWyvm40W8nXRQKYu/U9p3p45SEkq8RBJZEIlXOXCkmeUSWQh7ErCk76fEnmp5iQxL3wFeNLPno48XEK2flXKqyiCUBYUTg45ERPoQxBqvV4EHgNeBt6MxLIp3HF2tr6rnL29upK0t6T4siyQtd38cmAe8T2Rn49eIfKBLKlfd+wa/efqDvjuFV0PRNEjrp8iqiAQqkF2N7v594PtBnLs3z76/lev+vJyj9ilm9IisoMMRkQEws0uBq4gUQV0GHAm8DJwYYFhD7tn3tpKf3c9wXVWmy4wiw0DcZ7wS1Zj8aC2vGi2wFxlGrgIOB9a5+wlE7p0Y+904cVRd38SOhpa+F9a3tULVGijWjkaRRKfEK2psYXstLyVeIsNIg7s3AJhZlru/BxwQcExDqr2UxOS+SknUVEBro2a8RIYB3VciqrQgcnlRRVRFhpWKaB2vPwFPmtl2Ai7IPNTWhuuAfmp4qZSEyLChxCtq9IgszHTbIJHhxN3PiP54vZk9CxQCjwcY0pDLSg8xe2Jh31Xr20tJFO8bn6BEZI8p8YrKCKXxwOVHMamvwU1EEpa7P99/r+Hn5BljOXnG2L47Va2GjFzIHxefoERkjynx6uSwKUVBhyAiMnjhssitgizut5EUkUHS4vpOXltTxf8tWR90GCIiHU7+1Qv86qmVfXeqKtM9GkWGCSVenfx52QZ+/NiKoMMQEQGgobmV9zbXEuprJqu1Bbav1cJ6kWFCiVcnYwuy2V7fTGNLa9ChiIhQXjWAUhLV66CtRaUkRIYJJV6dlBZEanltVUkJEUkA7TW8phT3UTy1anXku2a8RIYFJV6djOmo5aWSEiISvHXtNbxUSkIkaSjx6uRf1es14yUiwZtUlMvpc8YzMjej905VZZCZD3kl8QtMRPaYykl0Mn30CF74+gkdCZiISJA+eshYPnpIPzW8wmWRezSqlITIsKAZr04y09OYXJxLZrp+LSISvIbmAWz0qSrTwnqRYUQZRhf3LS7nwaUVQYchIimupbWNmdc/wW+e/qCPTk1QXa6F9SLDiC41dvHg0g2YwScPmxh0KCKSwjbVNNDc6ozJz+q90/a14G2a8RIZRjTj1cWYgiztahSRwLWXkuizhleVdjSKDDdKvLooLchmy45G3D3oUEQkha2ripaS6KuGV0cpCc14iQwXSry6GFuQza7mVmobW4IORURSWHm4nsxQGmML+thlXVUG2SMhtyhucYnI3tEary7ai6hu3dFIQXYftXNERGLoyOnFjMhKJ5TWR5mIcJlmu0SGGSVeXZw8Yyzv//BkstJDQYciIinshAPHcMKBY/ruFC6DKUfHJyARGRK61NhFVnpISZeIBMrdWbV1J40tfdTxat4FOyo04yUyzCjx6qKtzbn+keU8/s6moEMRkRQVrmviw794nrtfLe+9U9WayHftaBQZVpR4dZGWZjz8xgb+uSocdCgikqLaS0lMGUgpiaLpcYhIRIaKEq8ejC3IVi0vEQlMebSUxOQilZIQSTaBJF5mNtLMHjCz98xshZkdFUQcvRlTkMWW2sagwxCRFLUuXI8ZTCrK6b1TVRnkjobswvgFJiJ7LagZr18Dj7v7gcBsYEVAcfRobEE2W2o04yWSrMzsZDN738xWmdk3e2g/z8zein69ZGazO7XdZmZbzeydWMW3LlzP+MKcvjf6qJSEyLAU98TLzAqABcCtAO7e5O7V8Y6jL+MKs3GctjZVrxdJNmYWAm4ETgEOBs41s4O7dFsDHOfus4AfAIs6tf0eODmWMZ5z+CS+ecqBfXcKl+kejSLDUBB1vKYDlcDt0U+RS4Gr3L0ugFh6dPVH9uerCw8IOgwRiY0jgFXuvhrAzO4FTgfebe/g7i916v8KMLFT2wtmNjWWAc6fXtx3h8adsHOzZrxEhqEgLjWmA4cCv3X3uUAd0NNU/2VmtsTMllRWVsY1QLM+KkWLyHA3AVjf6XFF9FhvLgH+FtOIOmlobuXFD7ZRXd/Ue6eq1ZHvSrxEhp0gEq8KoMLdX40+foBIIrYbd1/k7vPcfV5JSUlcA9xYvYt//+MSXl2tkhIiSainT1Y9riswsxOIJF7XDuoEe/HBcXVlHeff+mrfJW06Skko8RIZbuKeeLn7ZmC9mbVfyzuJTlP8iSA9zXhi+RZWbt0ZdCgiMvQqgEmdHk8ENnbtZGazgFuA0919UJ/C9uaD47pwZNVFnzW8wqrhJTJcBXWvxiuBu8wsE1gNXBxQHD0qHpFFKM20s1EkOS0G9jOzacAG4BzgM507mNlk4CHgAndfGc/g1lVFiqdO7rN46moYMRayRsQpKhEZKoEkXu6+DJgXxLkHIpRmlIzIYrOKqIokHXdvMbMrgCeAEHCbuy83s8uj7TcD1wHFwE3RNZ8t7j4PwMzuAY4HRptZBfB9d791qOJbF66nKC+TguyM3juFV2l9l8gwFdSMV8IrLchS9XqRJOXujwGPdTl2c6efLwUu7eW558YytvKqOiYX9THbBZFLjQecEsswRCRGlHj14sCxBexsagk6DBFJMdedegh1fY09DTVQv003xxYZppR49eI/PzUr6BBEJAUdMDa/7w66R6PIsKabZIuIJIjwzkbuX7KerbV9LHNor+GlUhIiw5ISr168tGobp93wIuujO4xERGLt7Q01fOOBt1gX7mPc6SglMS0+QYnIkFLi1YtWd96qqGFj9a6gQxGRFFEe/aA3pa/F9eFVUDARMnLiFJWIDCUlXr0YW5ANwJbaxoAjEZFUsS5cT05GiJL8rN47VZVBsQqnigxXSrx6MaY98VIRVRGJk3XhSCmJPu8XGy7TjkaRYUyJVy8KstPJyQipiKqIxM26cH3fFevrq6ChWgvrRYYxlZPohZlx3P4llBb0MeUvIjKE7v78kTS2tPbeQaUkRIY9JV59uPmCw4IOQURSSJ9ruyCyvgs04yUyjOlSo4jIcBEuA0uDUVODjkRE9pASrz7c+uIaPvSfz+DuQYciIhIpJVE4CdIzg45ERPaQEq9+VGzfRc2u5qDDEBGJlpLQjkaR4UyJVx/aF9ZrZ6OIBM4dwqu1sF5kmFPi1YeOIqo7VERVRAJWVwlNtVpYLzLMKfHqQ6mKqIpIolApCZGkoMSrD2MKslh4cCklquUlIkHrKCWh2wWJDGeq49WHrPQQiz47L+gwREQiOxrT0mHklKAjEZG9oBmvAWhrUzkJEQlYuCySdIX0eVlkOFPi1Y8r73mDM276Z9BhiEiqq1qtUhIiSUCJVz9yM0Js1OJ6EQmSezTx0sJ6keFOiVc/Sguz2bazkZbWtqBDEZFUVbsJmuu1sF4kCSjx6kdpQRbuULlTtbxEJCAqJSGSNJR49aO9iOpmXW4UkaB0lJJQ4iUy3AWWeJlZyMzeMLNHg4phIPYdM4KLjp5KYU5G0KGISKoKr4JQJhRODDoSEdlLQe5LvgpYARQEGEO/phTncf1phwQdhoiksvDqyPqutFDQkYjIXgpkxsvMJgIfB24J4vyD1djSyo6G5qDDEJFUVVWmy4wiSSKoS42/Ar4BDIutgif+9/Nc/8jyoMMQkVTU1gZVa6BYOxpFkkHcEy8zOxXY6u5L++l3mZktMbMllZWVcYquZyX5WWzdoV2NIhKAHRXQ2qgZL5EkEcSM1zHAaWa2FrgXONHM7uzayd0Xufs8d59XUlIS7xh3M7Ygm807tKtRRAKgUhIiSSXuiZe7f8vdJ7r7VOAc4Bl3Pz/ecQzG2MJstijxEpEghFdFvmvGSyQpqI7XAIwpyKK2oYX6ppagQxGRVFO1GjJyIX9c0JGIyBAINPFy9+fc/dQgYxiIY/YZzbdOORD3oCMRkaFgZieb2ftmtsrMvtlD+3lm9lb06yUzmz3Q5w65cFm0lIQ+J4skgyDreA0bsyeNZPakkUGHISJDwMxCwI3AR4AKYLGZPeLu73bqtgY4zt23m9kpwCJg/gCfO7SqymDMwTF7eRGJL32EGoC2Nmd9VT1h3a9RJBkcAaxy99Xu3kRkk8/pnTu4+0vuvj368BVg4kCfO6RaW2D7Wi2sF0kiSrwGoL65lWN/9iwPLK0IOhQR2XsTgPWdHldEj/XmEuBvg3nukJXDqSmHthYtrBdJIkq8BmBEVjojstJVUkIkOVgPx3pcwWlmJxBJvK4dzHOHrBxOeHXku2a8RJKG1ngN0JgCFVEVSRIVwKROjycCG7t2MrNZRG5rdoq7hwfz3CHTXkqieN+YnUJE4kszXgOkIqoiSWMxsJ+ZTTOzTCL1BB/p3MHMJgMPARe4+8rBPHdIVZVBZj7kBVtEWkSGjma8Bqi0IJvFa6uCDkNE9pK7t5jZFcATQAi4zd2Xm9nl0fabgeuAYuAmMwNoiV467PG5MQs2XBa5R6P1dIVTRIYjJV4DdM7hk/jwQaVBhyEiQ8DdHwMe63Ls5k4/XwpcOtDnxkxVGYw/NC6nEpH4UOI1QPOnFwcdgoikkpYmqC6HmWcFHYmIDCGt8RqgnY0tvLo6THV9U9ChiEgqqF4H3qZSEiJJRonXAK3cUsvZi17hjfLqoEMRkVTQsaNRiZdIMlHiNUClBdkA2tkoIvERLot8VykJkaSixGuAxuRnAbBFiZeIxENVGWSPhNyioCMRkSGkxGuAMkJpjB6RqcRLROIjXKbLjCJJSInXIIzJz2aLqteLSDxUrdbCepEkpHISg/D9fzuYvCz9ykQkxpoboKZCM14iSUhZxCColpeIxMX2NYBrxkskCelS4yCsr6rnT29soLm1LehQRCSZqZSESNJS4jUI/1y1ja/ct0wL7EUktjpKSSjxEkk2SrwGobQwUstLC+xFJKaqyiB3NGQXBh2JiAwxJV6DUJrfnnhpxktEYii8WrNdIklKidcglBaoiKqIxEFVmRbWiyQpJV6DUJSXSUbIdKlRRGKncSfUboLi6UFHIiIxoHISg2BmPHD50YwfmRN0KCKSrKpWR77rHo0iSUmJ1yDNnjQy6BBEJJlVRXc06lKjSFKK+6VGM5tkZs+a2QozW25mV8U7hr3x2poq7n61POgwRCRZtZeSKNKlRpFkFMQarxbga+5+EHAk8CUzOziAOPbI4+9s5kd/fTfoMEQkWVWthhFjIWtE0JGISAzEPfFy903u/nr051pgBTAh3nHsqdKCLOqaWqltaA46FBFJRuEylZIQSWKB7mo0s6nAXODVIOMYjLEqoioisVRVpsuMIkkssMTLzEYADwJfcfcdPbRfZmZLzGxJZWVl/APsxZhoEdWtquUlIkOtoQbqKrWjUSSJBZJ4mVkGkaTrLnd/qKc+7r7I3ee5+7ySkpL4BtiH9hmvzUq8RGSo6R6NIkkv7uUkzMyAW4EV7v6LIX3xhh0QXgUF4yGvBNJCQ/ryAJNG5fDitSdQWpA95K8tIimuvYaXSkmIJK0g6ngdA1wAvG1my6LHvu3uj+31K1cshjvPjPyclh7ZGVQwLpKI5Y+P/jwB8tuPjYOMwSVQ6aE0Jo7K3etQRUS66SglMS3YOEQkZuKeeLn7i4DF5MXHzYZz7oYdGyNftZsi37e8C6uehqad3Z+TUxRJxgrGRROy9p/HR5KzgnGQPRLsXyHft7gcdzjniMkxeRsikqKqyqBgImTo7hgiySq5KtfnjYYDP957e8OOaDK2AXZsgtpogtb+88Y3Igtbu0rPiSZhkVmy3LVGeX0GT79ZCAYZoTQW7DcagOWbdrCttjGapxkGZGWkccTUIjBj+cYd1OyKlKIwi2SgOZkhZk8cCcCKTbXsbIy0p5kBRl5WiAPHFgDw7qYd7GpujTw/Gl5+Tgb7lURq/ryzsYamFu94fYDCnAymj87raG9p9d2ePzIvkynFkfa3Kmpw993efvGILCaOyqHNnXc2dNsHQUl+FuMKs2lpa2PFptpu7aUF2YzJz6KptY2Vm7u3jy3MZvSILBqaW1m1tXtyPGFkLqPyMqhvamXNtrpu7RNH5VCYk0FtYwvrw93bJxXlkp+Vzo6GZjZs39WtfUpxLrmZIarrm9lU033t3tTRueRkhNhe38SWmvbdrN7x+502Oo/MUBrhuia27ey+23WfkhGkpxmVOxupqmvq1r7fmHzSDLbUNlJdv3u7AfuX5gORdYU7du1exiSUZuwT/dtvrGlgZ5cyJ+mhtI6/fUX1LuqbWndrz0w3phZFZnDXV+2ioXn39uyMEJOKcsCddVX1NLW07daekxliYvQWWmu31dHctnt7XlY646PrIskbA4de0O39SyfhMt2jUSTJWdf/ySaiefPm+ZIlS+JzspYm2Lm5+6xZp59bazYSctXxEhmUsTPh8hcH3N3Mlrr7vBhGFBeDGr/+cyoc/An4t1/FMCIRibW+xq/kmvEaCumZMHJy5KsXIXdo7j5z0hPHcYe06OxIc2sbrW2RZNcd2jwyc5KbGflT1DY009LqONDmkdmD9DRjZE4mAFX1TZHnd8qX00PGqNxIe+XORtwjr90uM/1f7Vt2NNLm3vnpZGekUZSbAcCG6l10zcXzstIZlZuBu1OxvfuM0IjsSHtrm1PRw4xSYU4GI3PSaW5zNlQ3RN/7v05SlJtJYW4GjS2tHe2djR6RSUF2Bg3Nndv/9fwx+VnkZ2dQ19gSmbGy3a9kjyvMJi8zndrGZjb3UH9twshscjMzqKlvZktt9/bJRTlkZ4TYXtfE1uiMViT8yHmmleSSFQqxra6RbbXdZ7T2HZNHeloaW2sbCNd1T9gPKB1Bmhmbduxie3339oOjs50bquup3tWyW1vIjAPHRmbEKrbXU9Owe3tGWhr7l0ZmxNaF69jZZcYrK5TGvmNGgBmrt+1kV9PuM1bZGWkdM2qrtu6ksaX7jNbU6Gzpyi21NLft/h9PfnYGk4va10TGZoVB0nCHS56MrE8VkaSlGS8RSUgpOeMlIkmhr/Er0Mr1IiIiIqlEiZeIpBwzO9nM3jezVWb2zR7aDzSzl82s0cyu6dJ2lZm9Y2bLzewrcQtaRJKCEi8RSSlmFgJuBE4BDgbONbODu3SrAr4M/HeX584APg8cAcwGTjWz/WIetIgkDSVeIpJqjgBWuftqd28C7gVO79zB3be6+2Kg626Hg4BX3L3e3VuA54Ez4hG0iCQHJV4ikmomAOs7Pa6IHhuId4AFZlZsZrnAx4BJQxyfiCQx7VsWkVTTU12LAW3vdvcVZvafwJPATuBNoKVrPzO7DLgMYPJk3eFCRP5FM14ikmoq2H2WaiKwcaBPdvdb3f1Qd19AZC3YBz30WeTu89x9XklJyV4HLCLJQ4mXiKSaxcB+ZjbNzDKBc4BHBvpkMxsT/T4ZOBO4JyZRikhS0qVGEUkp7t5iZlcATwAh4DZ3X25ml0fbbzazscASoABoi5aNONjddwAPmlkxkYX3X3L37YG8EREZlpR4iUjKcffHgMe6HLu508+biVyC7Om5x8Y2OhFJZsPilkFmVgmsG2D30cC2GIYTb8n0fvReElOivpcp7j7sF0gNcvyCxP177Am9l8SVTO8nEd9Lr+PXsEi8BsPMliTD/d3aJdP70XtJTMn0XpJBMv099F4SVzK9n+H2XrS4XkRERCROlHiJiIiIxEkyJl6Lgg5giCXT+9F7SUzJ9F6SQTL9PfReElcyvZ9h9V6Sbo2XiIiISKJKxhkvERERkYSUVImXmZ1sZu+b2Soz+2bQ8ewpM5tkZs+a2QozW25mVwUd094ys5CZvWFmjwYdy94ys5Fm9oCZvRf9Gx0VdEx7ysyujv439o6Z3WNm2UHHlKqSZfwCjWGJTONX8JIm8TKzEHAjcApwMHCumR0cbFR7rAX4mrsfBBwJfGkYv5d2VwErgg5iiPwaeNzdDwRmM0zfl5lNAL4MzHP3GUSquJ8TbFSpKcnGL9AYlsg0fgUsaRIv4Ahglbuvdvcm4F7g9IBj2iPuvsndX4/+XEvkH8aEYKPac2Y2Efg4cEvQsewtMysAFgC3Arh7k7tXBxrU3kkHcswsHchlEDeLliGVNOMXaAxLVBq/EkMyJV4TgPWdHlcwjP+htzOzqcBc4NWAQ9kbvwK+AbQFHMdQmA5UArdHLzvcYmZ5QQe1J9x9A/DfQDmwCahx978HG1XKSsrxCzSGJRiNXwkgmRIv6+HYsN6yaWYjgAeBr0RvzjvsmNmpwFZ3Xxp0LEMkHTgU+K27zwXqgGG5HsfMRhGZVZkGjAfyzOz8YKNKWUk3foHGsASk8SsBJFPiVQFM6vR4IsNk2rEnZpZBZMC6y90fCjqevXAMcJqZrSVy+eREM7sz2JD2SgVQ4e7tn94fIDKQDUcfBta4e6W7NwMPAUcHHFOqSqrxCzSGJSiNXwkgmRKvxcB+ZjbNzDKJLLJ7JOCY9oiZGZFr8Cvc/RdBx7M33P1b7j7R3acS+Zs84+7D4lNJT9x9M7DezA6IHjoJeDfAkPZGOXCkmeVG/5s7iWG60DYJJM34BRrDEpXGr8SQHnQAQ8XdW8zsCuAJIrsbbnP35QGHtaeOAS4A3jazZdFj33b3x4ILSTq5Ergr+j/I1cDFAcezR9z9VTN7AHidyC60NxhmFaCTRZKNX6AxLJFp/AqYKteLiIiIxEkyXWoUERERSWhKvERERETiRImXiIiISJwo8RIRERGJEyVeIiIiInGixEtixsxazWxZp68hq5BsZlPN7J2hej0Rkc40fkmsJE0dL0lIu9x9TtBBiIjsAY1fEhOa8ZK4M7O1ZvafZvZa9Gvf6PEpZva0mb0V/T45erzUzB42szejX+23hQiZ2f+a2XIz+7uZ5UT7f9nM3o2+zr0BvU0RSUIav2RvKfGSWMrpMlV/dqe2He5+BHAD8KvosRuAO9x9FnAX8Jvo8d8Az7v7bCL3FWuv6L0fcKO7HwJUA5+MHv8mMDf6OpfH5q2JSJLT+CUxocr1EjNmttPdR/RwfC1woruvjt5Id7O7F5vZNmCcuzdHj29y99FmVglMdPfGTq8xFXjS3feLPr4WyHD3H5rZ48BO4E/An9x9Z4zfqogkGY1fEiua8ZKgeC8/99anJ42dfm7lX2sWPw7cCBwGLDUzrWUUkaGk8Uv2mBIvCcrZnb6/HP35JeCc6M/nAS9Gf34a+AKAmYXMrKC3FzWzNGCSuz8LfAMYCXT71Coishc0fskeUyYtsZRjZss6PX7c3du3ZGeZ2atEkv9zo8e+DNxmZl8HKoGLo8evAhaZ2SVEPhl+AdjUyzlDwJ1mVggY8Et3rx6i9yMiqUPjl8SE1nhJ3EXXSMxz921BxyIiMhgav2Rv6VKjiIiISJxoxktEREQkTjTjJSIiIhInSrxERERE4kSJl4iIiEicKPESERERiRMlXiIiIiJxosRLREREJE7+PxNewABdmb+xAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 720x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "training_plot(['loss', 'accuracy'], history)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Training the neural network\n",
    "\n",
    "Training the neural network is similar to training the linear model. Compile the model passing in the optimizer, the loss, and the metrics. Then, call model.fit() passing in the datasets."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "id": "SSZvX-BZi5Eg"
   },
   "outputs": [],
   "source": [
    "# parameterize to the values in the previous cell\n",
    "def train_and_evaluate(batch_size = 32,\n",
    "                       lrate = 0.001, # default in Adam constructor\n",
    "                       l1 = 0,\n",
    "                       l2 = 0,\n",
    "                       num_hidden = 128):\n",
    "  regularizer = tf.keras.regularizers.l1_l2(l1, l2)\n",
    "\n",
    "  train_dataset = (tf.data.TextLineDataset(\n",
    "      \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/train_set.csv\").\n",
    "      map(decode_csv)).batch(batch_size)\n",
    "\n",
    "  eval_dataset = (tf.data.TextLineDataset(\n",
    "      \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/eval_set.csv\").\n",
    "      map(decode_csv)).batch(32) # this doesn't matter\n",
    "\n",
    "  # NN with one hidden layers\n",
    "  model = tf.keras.Sequential([\n",
    "              tf.keras.layers.Flatten(input_shape=(IMG_HEIGHT, IMG_WIDTH, IMG_CHANNELS)),\n",
    "              tf.keras.layers.Dense(num_hidden,\n",
    "                                    kernel_regularizer=regularizer, \n",
    "                                    activation=tf.keras.activations.relu),\n",
    "              tf.keras.layers.Dense(len(CLASS_NAMES), \n",
    "                                    kernel_regularizer=regularizer,\n",
    "                                    activation='softmax')\n",
    "  ])\n",
    "  model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=lrate),\n",
    "                  loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),\n",
    "                  metrics=['accuracy'])\n",
    "    \n",
    "  history = model.fit(train_dataset, validation_data=eval_dataset, epochs=10)\n",
    "  training_plot(['loss', 'accuracy'], history)\n",
    "  return model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "First, train your model by using 128 hidden layers."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 694
    },
    "id": "2kiGKhlkk1tX",
    "outputId": "c012526d-32ee-4a6a-a458-e03ed3d346e1"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "104/104 [==============================] - 157s 2s/step - loss: 1.8989 - accuracy: 0.3512 - val_loss: 1.3971 - val_accuracy: 0.4378\n",
      "Epoch 2/10\n",
      "104/104 [==============================] - 122s 1s/step - loss: 1.3643 - accuracy: 0.4464 - val_loss: 1.2772 - val_accuracy: 0.4486\n",
      "Epoch 3/10\n",
      "104/104 [==============================] - 110s 1s/step - loss: 1.2519 - accuracy: 0.5006 - val_loss: 1.2926 - val_accuracy: 0.4703\n",
      "Epoch 4/10\n",
      "104/104 [==============================] - 114s 1s/step - loss: 1.1849 - accuracy: 0.5315 - val_loss: 1.3158 - val_accuracy: 0.4676\n",
      "Epoch 5/10\n",
      "104/104 [==============================] - 122s 1s/step - loss: 1.1232 - accuracy: 0.5636 - val_loss: 1.3247 - val_accuracy: 0.4649\n",
      "Epoch 6/10\n",
      "104/104 [==============================] - 122s 1s/step - loss: 1.0699 - accuracy: 0.5918 - val_loss: 1.3222 - val_accuracy: 0.4757\n",
      "Epoch 7/10\n",
      "104/104 [==============================] - 115s 1s/step - loss: 1.0254 - accuracy: 0.6100 - val_loss: 1.3207 - val_accuracy: 0.4811\n",
      "Epoch 8/10\n",
      "104/104 [==============================] - 112s 1s/step - loss: 0.9800 - accuracy: 0.6291 - val_loss: 1.3283 - val_accuracy: 0.4676\n",
      "Epoch 9/10\n",
      "104/104 [==============================] - 108s 1s/step - loss: 0.9390 - accuracy: 0.6461 - val_loss: 1.3506 - val_accuracy: 0.4649\n",
      "Epoch 10/10\n",
      "104/104 [==============================] - 109s 1s/step - loss: 0.9068 - accuracy: 0.6658 - val_loss: 1.3453 - val_accuracy: 0.4784\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "model = train_and_evaluate(batch_size=32, lrate=0.0001, l1=0, l2=0, num_hidden=128)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You would normally expect that adding layers to a model will improve the ability of the model to fit the training data, and thus lower the loss. Notice that it is not always the case though."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 694
    },
    "id": "pqrrlpj5Evrn",
    "outputId": "5d27430b-c14c-42b9-d3ef-0192cba87d73",
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "104/104 [==============================] - 114s 1s/step - loss: 2.4669 - accuracy: 0.3509 - val_loss: 1.4723 - val_accuracy: 0.4324\n",
      "Epoch 2/10\n",
      "104/104 [==============================] - 106s 1s/step - loss: 1.3723 - accuracy: 0.4409 - val_loss: 1.6079 - val_accuracy: 0.4514\n",
      "Epoch 3/10\n",
      "104/104 [==============================] - 118s 1s/step - loss: 1.3005 - accuracy: 0.4673 - val_loss: 1.5676 - val_accuracy: 0.4568\n",
      "Epoch 4/10\n",
      "104/104 [==============================] - 107s 1s/step - loss: 1.2473 - accuracy: 0.4976 - val_loss: 1.5239 - val_accuracy: 0.4405\n",
      "Epoch 5/10\n",
      "104/104 [==============================] - 111s 1s/step - loss: 1.1703 - accuracy: 0.5294 - val_loss: 1.5198 - val_accuracy: 0.4432\n",
      "Epoch 6/10\n",
      "104/104 [==============================] - 109s 1s/step - loss: 1.1074 - accuracy: 0.5600 - val_loss: 1.5674 - val_accuracy: 0.4486\n",
      "Epoch 7/10\n",
      "104/104 [==============================] - 106s 1s/step - loss: 1.0581 - accuracy: 0.5758 - val_loss: 1.5704 - val_accuracy: 0.4459\n",
      "Epoch 8/10\n",
      "104/104 [==============================] - 109s 1s/step - loss: 1.0213 - accuracy: 0.5994 - val_loss: 1.5222 - val_accuracy: 0.4351\n",
      "Epoch 9/10\n",
      "104/104 [==============================] - 110s 1s/step - loss: 1.0000 - accuracy: 0.6173 - val_loss: 1.4565 - val_accuracy: 0.4595\n",
      "Epoch 10/10\n",
      "104/104 [==============================] - 110s 1s/step - loss: 0.9855 - accuracy: 0.6276 - val_loss: 1.3454 - val_accuracy: 0.4973\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "model = train_and_evaluate(batch_size=32, lrate=0.0001, l1=0, l2=0, num_hidden=256)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "71kBPOGuSj95"
   },
   "source": [
    "## Train and evaluate a Deep Neural Network model\n",
    "\n",
    "Now train a DNN. You need to parameterize the number of layers, and the number of nodes in each layer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "id": "f26lxDv5Srao"
   },
   "outputs": [],
   "source": [
    "# parameterize to the values in the previous cell\n",
    "def train_and_evaluate(batch_size = 32,\n",
    "                       lrate = 0.0001,\n",
    "                       l1 = 0,\n",
    "                       l2 = 0.001,\n",
    "                       num_hidden = [64, 16]):\n",
    "  regularizer = tf.keras.regularizers.l1_l2(l1, l2)\n",
    "\n",
    "  train_dataset = (tf.data.TextLineDataset(\n",
    "      \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/train_set.csv\").\n",
    "      map(decode_csv)).batch(batch_size)\n",
    "\n",
    "  eval_dataset = (tf.data.TextLineDataset(\n",
    "      \"gs://cloud-training-demos/practical-ml-vision-book-data/flowers_5_jpeg/flower_photos/eval_set.csv\").\n",
    "      map(decode_csv)).batch(32) # this doesn't matter\n",
    "\n",
    "  # NN with multiple hidden layers\n",
    "  layers = [tf.keras.layers.Flatten(\n",
    "      input_shape=(IMG_HEIGHT, IMG_WIDTH, IMG_CHANNELS),\n",
    "      name='input_pixels')]\n",
    "  layers = layers + [\n",
    "      tf.keras.layers.Dense(nodes,\n",
    "                            kernel_regularizer=regularizer, \n",
    "                            activation=tf.keras.activations.relu,\n",
    "                            name='hidden_dense_{}'.format(hno))\n",
    "          for hno, nodes in enumerate(num_hidden)\n",
    "  ]\n",
    "  layers = layers + [\n",
    "      tf.keras.layers.Dense(len(CLASS_NAMES), \n",
    "                            kernel_regularizer=regularizer,\n",
    "                            activation='softmax',\n",
    "                            name='flower_prob')\n",
    "  ]\n",
    "\n",
    "  model = tf.keras.Sequential(layers, name='flower_classification')\n",
    "  model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=lrate),\n",
    "                loss=tf.keras.losses.SparseCategoricalCrossentropy(\n",
    "                    from_logits=False),\n",
    "                metrics=['accuracy'])\n",
    "  print(model.summary())\n",
    "  history = model.fit(train_dataset, validation_data=eval_dataset, epochs=10)\n",
    "  training_plot(['loss', 'accuracy'], history)\n",
    "  return model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 983
    },
    "id": "jlxxxpeaT6ea",
    "outputId": "f7ff1437-a7c9-44a0-ffe9-bc7f3c8c3262"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"flower_classification\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "input_pixels (Flatten)       (None, 150528)            0         \n",
      "_________________________________________________________________\n",
      "hidden_dense_0 (Dense)       (None, 64)                9633856   \n",
      "_________________________________________________________________\n",
      "hidden_dense_1 (Dense)       (None, 16)                1040      \n",
      "_________________________________________________________________\n",
      "flower_prob (Dense)          (None, 5)                 85        \n",
      "=================================================================\n",
      "Total params: 9,634,981\n",
      "Trainable params: 9,634,981\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n",
      "None\n",
      "Epoch 1/10\n",
      "104/104 [==============================] - 121s 1s/step - loss: 1.8870 - accuracy: 0.3139 - val_loss: 1.5853 - val_accuracy: 0.3676\n",
      "Epoch 2/10\n",
      "104/104 [==============================] - 109s 1s/step - loss: 1.6866 - accuracy: 0.3785 - val_loss: 1.5293 - val_accuracy: 0.4054\n",
      "Epoch 3/10\n",
      "104/104 [==============================] - 113s 1s/step - loss: 1.5494 - accuracy: 0.4415 - val_loss: 1.6159 - val_accuracy: 0.4027\n",
      "Epoch 4/10\n",
      "104/104 [==============================] - 111s 1s/step - loss: 1.4291 - accuracy: 0.4864 - val_loss: 1.4335 - val_accuracy: 0.4351\n",
      "Epoch 5/10\n",
      "104/104 [==============================] - 107s 1s/step - loss: 1.4071 - accuracy: 0.5018 - val_loss: 1.9287 - val_accuracy: 0.4054\n",
      "Epoch 6/10\n",
      "104/104 [==============================] - 104s 1s/step - loss: 1.4099 - accuracy: 0.5039 - val_loss: 2.3087 - val_accuracy: 0.3486\n",
      "Epoch 7/10\n",
      "104/104 [==============================] - 106s 1s/step - loss: 1.4112 - accuracy: 0.5088 - val_loss: 1.7884 - val_accuracy: 0.3838\n",
      "Epoch 8/10\n",
      "104/104 [==============================] - 104s 996ms/step - loss: 1.3400 - accuracy: 0.5291 - val_loss: 1.6256 - val_accuracy: 0.4216\n",
      "Epoch 9/10\n",
      "104/104 [==============================] - 105s 1s/step - loss: 1.2254 - accuracy: 0.5694 - val_loss: 1.6722 - val_accuracy: 0.4081\n",
      "Epoch 10/10\n",
      "104/104 [==============================] - 109s 1s/step - loss: 1.2065 - accuracy: 0.5806 - val_loss: 1.5633 - val_accuracy: 0.4270\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# TODO 3: Train and evaluate a DNN model\n",
    "model = train_and_evaluate(lrate=0.0001, l2=0.001, num_hidden = [64, 16])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Congrats! You've completed the lab!"
   ]
  }
 ],
 "metadata": {
  "accelerator": "GPU",
  "colab": {
   "collapsed_sections": [
    "5UOm2etrwYCs",
    "BtsR1Fzbh4ff",
    "GPCx8a-IZpUd",
    "X9U0ob6HLUAX"
   ],
   "name": "02b_neural_network.ipynb",
   "provenance": [],
   "toc_visible": true
  },
  "environment": {
   "kernel": "python3",
   "name": "tf2-gpu.2-6.m89",
   "type": "gcloud",
   "uri": "gcr.io/deeplearning-platform-release/tf2-gpu.2-6:m89"
  },
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
